W3C home > Mailing lists > Public > ietf-http-wg@w3.org > April to June 2009

RE: i37: Vary and non-existant headers

From: Brian Smith <brian@briansmith.org>
Date: Thu, 7 May 2009 19:34:43 -0500
To: "'Julian Reschke'" <julian.reschke@gmx.de>, "'Roy T. Fielding'" <fielding@gbiv.com>
Cc: "'Brian Smith'" <brian@briansmith.org>, "'Mark Nottingham'" <mnot@mnot.net>, "'HTTP Working Group'" <ietf-http-wg@w3.org>
Message-ID: <002001c9cf74$c9101480$5b303d80$@org>
Julian Reschke wrote:
> ""When a cache receives a request that can be satisfied by a stored
> response that includes a Vary header field (Section 3.5), it MUST NOT
> use that response unless all of the selecting request-headers nominated
> by the *stored* Vary header match in both the original request
> associated with the stored response, and the presented request, *or
> after validating with the origin server*".

Section 2.2 already says this (almost), much more clearly. How about this:

  - Use of server-driven content negotiation (Section 4.1 of [Part3])
  - alters the conditions under which a cache can use the response for
  - subsequent requests. [ed: completely untrue]
  - 
  - When a cache receives a request that can be satisfied by a stored
  - response that includes a Vary header field (Section 3.5), it MUST NOT
  - use that response unless all of the selecting request-headers in the
  - presented request match the corresponding stored request-headers from
  - the original request. [ed: redundant with 2.2]

    The selecting request-headers from two requests are defined to match
    if and only if the selecting request-headers in the first request can
    be transformed to the selecting request-headers in the second request
    by adding or removing linear white space [[anchor11&anchor12]].
  + Any selecting request-headers absent from the first request must 
  + be absent from the second request. [ed: Mark's suggestion,
  + reworded to match the terminology from the first sentence.]

The first sentence in Section 2.2 needs to be changed:

  - For a presented request, a cache MUST NOT return a stored
  - response, unless:
  + A cache MUST NOT return a stored response without
  + validating it, unless:

The last bullet point in Section 2.2 needs to be changed:

  -  o the stored response is either:
  -
  -     *  fresh (see Section 2.3), or
  -
  -     *  allowed to be served stale (see Section 2.3.3), or
  -
  -     *  successfully validated (see Section 2.4).
  +  o the stored response is fresh (see Section 2.3) or allowed
  +    to be served stale (see Section 2.3.3).

Regards,
Brian
Received on Friday, 8 May 2009 00:35:21 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 27 April 2012 06:51:02 GMT