- From: Jeffrey Mogul <mogul@pa.dec.com>
- Date: Wed, 09 Jul 97 18:09:24 MDT
- To: Henrik Frystyk Nielsen <frystyk@w3.org>
- Cc: http-wg@cuckoo.hpl.hp.com
Proposed changes to Section 14.43, 1st paragraph:
RFC2068:
The Vary response-header field is used by a server to signal that
the response entity was selected from the available representations
of the response using server-driven negotiation (section 12).
Field-names listed in Vary headers are those of request-headers.
The Vary field value indicates either that the given set of header
fields encompass the dimensions over which the representation might
vary, or that the dimensions of variance are unspecified ("*") and
thus may vary over any aspect of future requests.
Henrik proposed:
The Vary response-header field is used by a server to inform caches
(see section 13.6) that the response entity was selected from the
available representations of the response using server-driven
negotiation (section 12). Field-names listed in Vary headers are
those of request-headers. The Vary field value indicates either the
set of request-header fields encompassed by the dimensions over
which the representation vary at the time of the response, or
leaves the set unspecified ("*").
I think this change leaves the last sentence somewhat vaguer than the
original.
Also, I agree with Koen that the important issue is not what determined
the representation when the response was generated, but rather whether
the cache can autonomously respond to a subsequent request. I.e., if
the origin server allows a Vary-ed response to be cached without
revalidation until time T, then it must be the case that all of the
factors that determine the appropriateness of the response are known to
the cache, at least until time T.
How about
The Vary field value indicates the set of request-header fields
that fully determines, while the response is fresh, whether a cache
may use the response to reply to a subsequent request without
revalidation. For uncachable or stale responses, the Vary field
value advises the user agent about the criteria that were used to
select the representation. A Vary field value of ``*'' implies
that a cache cannot determine from the request headers of a
subsequent request whether this response is the appropriate
representation.
I know this is a little longer than the original, but I think
it is probably less ambiguous.
-Jeff
Received on Wednesday, 9 July 1997 18:13:46 UTC