Ignore:
Timestamp:
Sep 3, 2012, 4:03:33 PM (7 years ago)
Author:
fielding@…
Message:

(editorial) move Vary to p2 because it is generated by origin servers and not limited to caching

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p6-cache.xml

    r1858 r1860  
    3333  <!ENTITY header-connection           "<xref target='Part1' x:rel='#header.connection' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
    3434  <!ENTITY header-date                 "<xref target='Part2' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
     35  <!ENTITY header-last-modified        "<xref target='Part4' x:rel='#header.last-modified' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
     36  <!ENTITY header-vary                 "<xref target='Part2' x:rel='#header.vary' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
    3537  <!ENTITY header-via                  "<xref target='Part1' x:rel='#header.via' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
    36   <!ENTITY header-last-modified        "<xref target='Part4' x:rel='#header.last-modified' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
    3738  <!ENTITY header-fields               "<xref target='Part1' x:rel='#header.fields' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
    3839  <!ENTITY safe-methods                "<xref target='Part2' x:rel='#safe.methods' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">
     
    977978<t>
    978979   When a cache receives a request that can be satisfied by a stored response
    979    that has a <x:ref>Vary</x:ref> header field (<xref target="header.vary"/>),
     980   that has a <x:ref>Vary</x:ref> header field (&header-vary;),
    980981   it &MUST-NOT; use that response unless all of the selecting header fields
    981982   nominated by the Vary header field match in both the original request
     
    17671768   </t>
    17681769</x:note>
    1769 </section>
    1770 
    1771 <section anchor="header.vary" title="Vary">
    1772    <iref item="Vary header field" primary="true" x:for-anchor="" />
    1773    <iref item="Header Fields" primary="true" subitem="Vary" x:for-anchor="" />
    1774    <x:anchor-alias value="Vary"/>
    1775 <t>
    1776    The "Vary" header field conveys the set of header fields
    1777    that were used to select the representation.
    1778 </t>
    1779 <t>
    1780    Caches use this information, in part, to determine whether a stored
    1781    response can be used to satisfy a given request; see <xref
    1782    target="caching.negotiated.responses" />.
    1783 </t>
    1784 <t>
    1785    In uncacheable or stale responses, the Vary field value advises the user
    1786    agent about the criteria that were used to select the representation.
    1787 </t>
    1788 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Vary"/>
    1789   <x:ref>Vary</x:ref> = "*" / 1#<x:ref>field-name</x:ref>
    1790 </artwork></figure>
    1791 <t>
    1792    The set of header fields named by the Vary field value is known as the
    1793    selecting header fields.
    1794 </t>
    1795 <t>
    1796    A server &SHOULD; include a Vary header field with any cacheable response
    1797    that is subject to proactive negotiation. Doing so allows a cache to
    1798    properly interpret future requests on that resource and informs the user
    1799    agent about the presence of negotiation on that resource. A server &MAY;
    1800    include a Vary header field with a non-cacheable response that is subject
    1801    to proactive negotiation, since this might provide the user agent with
    1802    useful information about the dimensions over which the response varies at
    1803    the time of the response.
    1804 </t>
    1805 <t>
    1806    A Vary field value of "*" signals that unspecified parameters not limited
    1807    to the header fields (e.g., the network address of the client), play a
    1808    role in the selection of the response representation; therefore, a cache
    1809    cannot determine whether this response is appropriate. A proxy &MUST-NOT;
    1810    generate the "*" value.
    1811 </t>
    1812 <t>
    1813    The field-names given are not limited to the set of standard header
    1814    fields defined by this specification. Field names are case-insensitive.
    1815 </t>
    18161770</section>
    18171771
     
    21912145      <xref target="header.pragma"/>
    21922146   </c>
    2193    <c>Vary</c>
    2194    <c>http</c>
    2195    <c>standard</c>
    2196    <c>
    2197       <xref target="header.vary"/>
    2198    </c>
    21992147   <c>Warning</c>
    22002148   <c>http</c>
     
    22932241      <x:defines>Date</x:defines>
    22942242      <x:defines>Location</x:defines>
     2243      <x:defines>Vary</x:defines>
    22952244    </x:source>
    22962245  </reference>
     
    25952544<x:ref>Expires</x:ref> = HTTP-date
    25962545
    2597 <x:ref>HTTP-date</x:ref> = &lt;HTTP-date, defined in [Part2], Section 6.1&gt;
     2546<x:ref>HTTP-date</x:ref> = &lt;HTTP-date, defined in [Part2], Section 9.1&gt;
    25982547
    25992548<x:ref>OWS</x:ref> = &lt;OWS, defined in [Part1], Section 3.2.1&gt;
     
    26012550<x:ref>Pragma</x:ref> = *( "," OWS ) pragma-directive *( OWS "," [ OWS
    26022551 pragma-directive ] )
    2603 
    2604 <x:ref>Vary</x:ref> = "*" / ( *( "," OWS ) field-name *( OWS "," [ OWS field-name ]
    2605  ) )
    26062552
    26072553<x:ref>Warning</x:ref> = *( "," OWS ) warning-value *( OWS "," [ OWS warning-value ]
     
    26342580</artwork>
    26352581</figure>
    2636 </section>
     2582<figure><preamble>ABNF diagnostics:</preamble><artwork type="inline">
     2583; field-name defined but not used
     2584</artwork></figure></section>
    26372585<?ENDINC p6-cache.abnf-appendix ?>
    26382586
Note: See TracChangeset for help on using the changeset viewer.