WGLC: p4 MUSTs

Alex Rousskov <rousskov@measurement-factory.com> Wed, 01 May 2013 00:34 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A45421F844C for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 30 Apr 2013 17:34:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.524
X-Spam-Level:
X-Spam-Status: No, score=-10.524 tagged_above=-999 required=5 tests=[AWL=0.075, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id W1ZSY0qhObhm for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 30 Apr 2013 17:34:20 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id C4A9121F8442 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 30 Apr 2013 17:34:20 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UXKzb-0006qL-Iv for ietf-http-wg-dist@listhub.w3.org; Wed, 01 May 2013 00:33:55 +0000
Resent-Date: Wed, 01 May 2013 00:33:55 +0000
Resent-Message-Id: <E1UXKzb-0006qL-Iv@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <rousskov@measurement-factory.com>) id 1UXKzS-0006pg-6n for ietf-http-wg@listhub.w3.org; Wed, 01 May 2013 00:33:46 +0000
Received: from measurement-factory.com ([209.169.10.130]) by maggie.w3.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from <rousskov@measurement-factory.com>) id 1UXKzR-0005YT-Ey for ietf-http-wg@w3.org; Wed, 01 May 2013 00:33:46 +0000
Received: from [127.0.0.1] (localhost [127.0.0.1]) (authenticated bits=0) by measurement-factory.com (8.14.3/8.14.3) with ESMTP id r410XMtl049841 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for <ietf-http-wg@w3.org>; Tue, 30 Apr 2013 18:33:23 -0600 (MDT) (envelope-from rousskov@measurement-factory.com)
Message-ID: <518062CA.6030301@measurement-factory.com>
Date: Tue, 30 Apr 2013 18:33:14 -0600
From: Alex Rousskov <rousskov@measurement-factory.com>
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130329 Thunderbird/17.0.5
MIME-Version: 1.0
To: IETF HTTP WG <ietf-http-wg@w3.org>
References: <D69329FD-7456-46C5-BE24-6E7EE7E48C39@mnot.net>
In-Reply-To: <D69329FD-7456-46C5-BE24-6E7EE7E48C39@mnot.net>
Content-Type: text/plain; charset="windows-1252"
Content-Transfer-Encoding: 7bit
Received-SPF: pass client-ip=209.169.10.130; envelope-from=rousskov@measurement-factory.com; helo=measurement-factory.com
X-W3C-Hub-Spam-Status: No, score=-2.5
X-W3C-Hub-Spam-Report: RP_MATCHES_RCVD=-2.509, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1UXKzR-0005YT-Ey 5b93beb8f9a59da06c28c8c8c22ba566
X-Original-To: ietf-http-wg@w3.org
Subject: WGLC: p4 MUSTs
Archived-At: <http://www.w3.org/mid/518062CA.6030301@measurement-factory.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17741
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hello,

    These comments are based on the "latest" snapshot dated Tue 30 Apr
2013 06:59:03 AM MDT at
https://svn.tools.ietf.org/svn/wg/httpbis/draft-ietf-httpbis/latest/p4-conditional.html

I hope these comments can be addressed by editors alone.


> The If-Match condition is met if and only if any of the entity-tags
> listed in the If-Match field value match the entity-tag of the
> selected representation using the weak comparison function (as per
> Section 2.3.2), or if "*" is given and any current representation
> exists for the target resource.

The "if and only if ... or if ..." construction looks funny. It is kind
of correct because the first part applies to the non-* condition and the
second part applies to the * condition, but still... Please consider
dropping either "and only if" or the "if" in "or if".

Can a proxy with an empty cache determine whether "any current
representation exists for the target resource" without forwarding the
request to the origin server? In other words, does "exists" mean "exists
in the proxy cache" or "exists on the origin server"? Perhaps you can
add some test to clarify the scope of resource existence here from the
caching proxy point of view.

The same two concerns apply to the If-None-Match section.




Here is a list of requirement-like statements that seem to be missing
MUST/SHOULD/MAY keywords to make them formal requirements and indicate
the level of those requirements:

> Preconditions are ignored if the server determines that an error or
> redirect response applies before they are evaluated.

> The conditional request header fields defined by this specification
> are ignored for request methods that never involve the selection or
> modification of a selected representation

> The general rule of conditional precedence is that exact match
> conditions are ...

> Specifically, the fields defined by this specification are evaluated
> as follows:

Please consider rephrasing the above using RFC 2119 keywords and, where
applicable, giving them explicit actors.


Thank you,

Alex.