- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Mon, 01 Feb 2010 15:26:54 +0100
- To: barryleiba@computer.org
- CC: Anthony Bryan <anthonybryan@gmail.com>, HTTP Working Group <ietf-http-wg@w3.org>
Barry Leiba wrote: > ... > Oh, my, I certainly think it's wrong and unclear, and it needs to be > changed (and I don't think "they" is sufficient). I also can't > imagine that the RFC Editor would let it pass. Each normative clause > has to have a subject, and it's confusing the have the subject sort of > presented at the beginning of the list. That's not good English. > > For example: > > HTTP/1.1 clients: > > * If an entity tag has been provided by the origin server, MUST > use that entity tag in any cache-conditional request (using If-Match > or If-None-Match). > > This asks people to mentally insert "HTTP/1.1 clients" where there's a > missing subject. Ah, I see, there's a missing subject before MUST, so > that's where I need to stick it. No, that's too much to ask of the > reader. That it's been that way for a long time doesn't mean that > it's right, only that no one has complained. It's only been reviewed > by people who knew what you meant already, so they breezed through it. > > Please change the list to look something like this: > > For HTTP/1.1 clients: > > * If an entity tag has been provided by the origin server, HTTP/1.1 clients > MUST use that entity tag in any cache-conditional request (using If-Match > or If-None-Match). > > That really isn't a hard change to make, it will avoid any > misunderstandings, and it will avoid interaction on this with the RFC > Editor when the time comes. > ... Understood. Here's an alternative proposal; reverse the sentences so that the BCP14 keyword comes first (like in the previous list about servers): - snip - HTTP/1.1 clients: o MUST use that entity tag in any cache-conditional request (using If-Match or If-None-Match) if an entity tag has been provided by the origin server. o SHOULD use that value in non-subrange cache-conditional requests (using If-Modified-Since) if only a Last-Modified value has been provided by the origin server. o MAY use that value in subrange cache-conditional requests (using If-Unmodified-Since) if only a Last-Modified value has been provided by an HTTP/1.0 origin server. The user agent SHOULD provide a way to disable this, in case of difficulty. o SHOULD use both validators in cache-conditional requests if both an entity tag and a Last-Modified value have been provided by the origin server. This allows both HTTP/1.0 and HTTP/1.1 caches to respond appropriately. - snip - Feedback appreciated, Julian
Received on Monday, 1 February 2010 14:27:31 UTC