Changeset 1805 for draft-ietf-httpbis/latest/p4-conditional.html
- Timestamp:
- 16/07/12 14:30:03 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p4-conditional.html
r1803 r1805 481 481 <link rel="Chapter" href="#rfc.section.9" title="9 References"> 482 482 <link rel="Appendix" title="A Changes from RFC 2616" href="#rfc.section.A"> 483 <link rel="Appendix" title="B Collected ABNF" href="#rfc.section.B"> 484 <link rel="Appendix" title="C Change Log (to be removed by RFC Editor before publication)" href="#rfc.section.C"> 483 <link rel="Appendix" title="B Imported ABNF" href="#rfc.section.B"> 484 <link rel="Appendix" title="C Collected ABNF" href="#rfc.section.C"> 485 <link rel="Appendix" title="D Change Log (to be removed by RFC Editor before publication)" href="#rfc.section.D"> 485 486 <link href="p3-payload.html" rel="prev"> 486 487 <link href="p5-range.html" rel="next"> … … 542 543 <p>The current issues list is at <<a href="http://tools.ietf.org/wg/httpbis/trac/report/3">http://tools.ietf.org/wg/httpbis/trac/report/3</a>> and related documents (including fancy diffs) can be found at <<a href="http://tools.ietf.org/wg/httpbis/">http://tools.ietf.org/wg/httpbis/</a>>. 543 544 </p> 544 <p>The changes in this draft are summarized in <a href="#changes.since.19" title="Since draft-ietf-httpbis-p4-conditional-19">Appendix C.1</a>.545 <p>The changes in this draft are summarized in <a href="#changes.since.19" title="Since draft-ietf-httpbis-p4-conditional-19">Appendix D.1</a>. 545 546 </p> 546 547 <h1><a id="rfc.status" href="#rfc.status">Status of This Memo</a></h1> … … 620 621 <li><a href="#rfc.authors">Authors' Addresses</a></li> 621 622 <li>A. <a href="#changes.from.rfc.2616">Changes from RFC 2616</a></li> 622 <li>B. <a href="#collected.abnf">Collected ABNF</a></li> 623 <li>C. <a href="#change.log">Change Log (to be removed by RFC Editor before publication)</a><ul> 624 <li>C.1 <a href="#changes.since.19">Since draft-ietf-httpbis-p4-conditional-19</a></li> 623 <li>B. <a href="#imported.abnf">Imported ABNF</a></li> 624 <li>C. <a href="#collected.abnf">Collected ABNF</a></li> 625 <li>D. <a href="#change.log">Change Log (to be removed by RFC Editor before publication)</a><ul> 626 <li>D.1 <a href="#changes.since.19">Since draft-ietf-httpbis-p4-conditional-19</a></li> 625 627 </ul> 626 628 </li> … … 672 674 </p> 673 675 <h2 id="rfc.section.1.2"><a href="#rfc.section.1.2">1.2</a> <a id="notation" href="#notation">Syntax Notation</a></h2> 674 <p id="rfc.section.1.2.p.1">This specification uses the Augmented Backus-Naur Form (ABNF) notation of <a href="#RFC5234" id="rfc.xref.RFC5234.1"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a> with the list rule extension defined in <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. <a href="#collected.abnf" title="Collected ABNF">Appendix B</a> shows the collected ABNF with the list rule expanded. 675 </p> 676 <p id="rfc.section.1.2.p.2">The following core rules are included by reference, as defined in <a href="#RFC5234" id="rfc.xref.RFC5234.2"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>, <a href="http://tools.ietf.org/html/rfc5234#appendix-B.1">Appendix B.1</a>: ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double quote), HEXDIG 677 (hexadecimal 0-9/A-F/a-f), LF (line feed), OCTET (any 8-bit sequence of data), SP (space), and VCHAR (any visible US-ASCII 678 character). 679 </p> 680 <p id="rfc.section.1.2.p.3">The ABNF rules below are defined in <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> and <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>: 681 </p> 682 <div id="rfc.figure.u.1"></div><pre class="inline"> <a href="#notation" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 683 <a href="#notation" class="smpl">obs-text</a> = <obs-text, defined in <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 684 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 5.1</a>> 685 </pre><div id="rfc.iref.m.1"></div> 676 <p id="rfc.section.1.2.p.1">This specification uses the Augmented Backus-Naur Form (ABNF) notation of <a href="#RFC5234" id="rfc.xref.RFC5234.1"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a> with the list rule extension defined in <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. <a href="#imported.abnf" title="Imported ABNF">Appendix B</a> describes rules imported from other documents. <a href="#collected.abnf" title="Collected ABNF">Appendix C</a> shows the collected ABNF with the list rule expanded. 677 </p> 678 <div id="rfc.iref.m.1"></div> 686 679 <div id="rfc.iref.v.1"></div> 687 680 <h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="validators" href="#validators">Validators</a></h1> … … 740 733 was last modified. 741 734 </p> 742 <div id="rfc.figure.u. 2"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#header.last-modified" class="smpl">Last-Modified</a> = <a href="#notation" class="smpl">HTTP-date</a>735 <div id="rfc.figure.u.1"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#header.last-modified" class="smpl">Last-Modified</a> = <a href="#imported.abnf" class="smpl">HTTP-date</a> 743 736 </pre><p id="rfc.section.2.2.p.3">An example of its use is</p> 744 <div id="rfc.figure.u. 3"></div><pre class="text"> Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT737 <div id="rfc.figure.u.2"></div><pre class="text"> Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT 745 738 </pre><h3 id="rfc.section.2.2.1"><a href="#rfc.section.2.2.1">2.2.1</a> <a id="lastmod.generation" href="#lastmod.generation">Generation</a></h3> 746 739 <p id="rfc.section.2.2.1.p.1">Origin servers <em class="bcp14">SHOULD</em> send Last-Modified for any selected representation for which a last modification date can be reasonably and consistently determined, … … 802 795 same time, or both. An entity-tag consists of an opaque quoted string, possibly prefixed by a weakness indicator. 803 796 </p> 804 <div id="rfc.figure.u. 4"></div><pre class="inline"><span id="rfc.iref.g.2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span> <a href="#header.etag" class="smpl">ETag</a> = <a href="#header.etag" class="smpl">entity-tag</a>797 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span> <a href="#header.etag" class="smpl">ETag</a> = <a href="#header.etag" class="smpl">entity-tag</a> 805 798 806 799 <a href="#header.etag" class="smpl">entity-tag</a> = [ <a href="#header.etag" class="smpl">weak</a> ] <a href="#header.etag" class="smpl">opaque-tag</a> 807 800 <a href="#header.etag" class="smpl">weak</a> = %x57.2F ; "W/", case-sensitive 808 <a href="#header.etag" class="smpl">opaque-tag</a> = <a href="# notation" class="smpl">DQUOTE</a> *<a href="#header.etag" class="smpl">etagc</a> <a href="#notation" class="smpl">DQUOTE</a>809 <a href="#header.etag" class="smpl">etagc</a> = %x21 / %x23-7E / <a href="# notation" class="smpl">obs-text</a>810 ; <a href="# notation" class="smpl">VCHAR</a> except double quotes, plus obs-text801 <a href="#header.etag" class="smpl">opaque-tag</a> = <a href="#imported.abnf" class="smpl">DQUOTE</a> *<a href="#header.etag" class="smpl">etagc</a> <a href="#imported.abnf" class="smpl">DQUOTE</a> 802 <a href="#header.etag" class="smpl">etagc</a> = %x21 / %x23-7E / <a href="#imported.abnf" class="smpl">obs-text</a> 803 ; <a href="#imported.abnf" class="smpl">VCHAR</a> except double quotes, plus obs-text 811 804 </pre><div class="note" id="rfc.section.2.3.p.3"> 812 805 <p> <b>Note:</b> Previously, opaque-tag was defined to be a quoted-string (<a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>, <a href="http://tools.ietf.org/html/rfc2616#section-3.11">Section 3.11</a>), thus some recipients might perform backslash unescaping. Servers therefore ought to avoid backslash characters in entity … … 818 811 not consistently maintained. 819 812 </p> 820 <div id="rfc.figure.u. 5"></div>813 <div id="rfc.figure.u.4"></div> 821 814 <p>Examples:</p> <pre class="text"> ETag: "xyzzy" 822 815 ETag: W/"xyzzy" … … 890 883 </div> 891 884 <h3 id="rfc.section.2.3.3"><a href="#rfc.section.2.3.3">2.3.3</a> <a id="example.entity.tag.vs.conneg" href="#example.entity.tag.vs.conneg">Example: Entity-tags varying on Content-Negotiated Resources</a></h3> 892 <p id="rfc.section.2.3.3.p.1">Consider a resource that is subject to content negotiation (<a href="p2-semantics.html#content.negotiation" title="Content Negotiation">Section 8</a> of <a href="#Part2" id="rfc.xref.Part2. 4"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>), and where the representations returned upon a GET request vary based on the <a href="p2-semantics.html#header.accept-encoding" class="smpl">Accept-Encoding</a> request header field (<a href="p2-semantics.html#header.accept-encoding" title="Accept-Encoding">Section 9.3</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>):893 </p> 894 <div id="rfc.figure.u. 6"></div>885 <p id="rfc.section.2.3.3.p.1">Consider a resource that is subject to content negotiation (<a href="p2-semantics.html#content.negotiation" title="Content Negotiation">Section 8</a> of <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>), and where the representations returned upon a GET request vary based on the <a href="p2-semantics.html#header.accept-encoding" class="smpl">Accept-Encoding</a> request header field (<a href="p2-semantics.html#header.accept-encoding" title="Accept-Encoding">Section 9.3</a> of <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>): 886 </p> 887 <div id="rfc.figure.u.5"></div> 895 888 <p>>> Request:</p><pre class="text2">GET /index HTTP/1.1 896 889 Host: www.example.com … … 898 891 899 892 </pre><p id="rfc.section.2.3.3.p.3">In this case, the response might or might not use the gzip content coding. If it does not, the response might look like:</p> 900 <div id="rfc.figure.u. 7"></div>893 <div id="rfc.figure.u.6"></div> 901 894 <p>>> Response:</p><pre class="text">HTTP/1.1 200 OK 902 895 Date: Thu, 26 Mar 2010 00:05:00 GMT … … 912 905 Hello World! 913 906 </span></pre><p id="rfc.section.2.3.3.p.5">An alternative representation that does use gzip content coding would be:</p> 914 <div id="rfc.figure.u. 8"></div>907 <div id="rfc.figure.u.7"></div> 915 908 <p>>> Response:</p><pre class="text">HTTP/1.1 200 OK 916 909 Date: Thu, 26 Mar 2010 00:05:00 GMT … … 924 917 <p> <b>Note:</b> Content codings are a property of the representation, so therefore an entity-tag of an encoded representation has to be distinct 925 918 from an unencoded representation to prevent conflicts during cache updates and range requests. In contrast, transfer codings 926 (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1. 7"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) apply only during message transfer and do not require distinct entity-tags.919 (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) apply only during message transfer and do not require distinct entity-tags. 927 920 </p> 928 921 </div> … … 982 975 field-value of "*" places the precondition on the existence of any current representation for the target resource. 983 976 </p> 984 <div id="rfc.figure.u. 9"></div><pre class="inline"><span id="rfc.iref.g.7"></span> <a href="#header.if-match" class="smpl">If-Match</a> = "*" / 1#<a href="#header.etag" class="smpl">entity-tag</a>977 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.7"></span> <a href="#header.if-match" class="smpl">If-Match</a> = "*" / 1#<a href="#header.etag" class="smpl">entity-tag</a> 985 978 </pre><p id="rfc.section.3.1.p.4">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 986 979 of the selected representation for the target resource (as per <a href="#entity.tag.comparison" title="Comparison">Section 2.3.2</a>), or if "*" is given and any current representation exists for the target resource. … … 996 989 </p> 997 990 <p id="rfc.section.3.1.p.9">Examples:</p> 998 <div id="rfc.figure.u. 10"></div><pre class="text"> If-Match: "xyzzy"991 <div id="rfc.figure.u.9"></div><pre class="text"> If-Match: "xyzzy" 999 992 If-Match: "xyzzy", "r2d2xxxx", "c3piozzzz" 1000 993 If-Match: * … … 1015 1008 for the target resource. 1016 1009 </p> 1017 <div id="rfc.figure.u.1 1"></div><pre class="inline"><span id="rfc.iref.g.8"></span> <a href="#header.if-none-match" class="smpl">If-None-Match</a> = "*" / 1#<a href="#header.etag" class="smpl">entity-tag</a>1010 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.8"></span> <a href="#header.if-none-match" class="smpl">If-None-Match</a> = "*" / 1#<a href="#header.etag" class="smpl">entity-tag</a> 1018 1011 </pre><p id="rfc.section.3.2.p.5">The If-None-Match condition is met if and only if none of the entity-tags listed in the If-None-Match field value match the 1019 1012 entity-tag of the selected representation for the target resource (as per <a href="#entity.tag.comparison" title="Comparison">Section 2.3.2</a>), or if "*" is given and no current representation exists for that resource. … … 1028 1021 </p> 1029 1022 <p id="rfc.section.3.2.p.9">Examples:</p> 1030 <div id="rfc.figure.u.1 2"></div><pre class="text"> If-None-Match: "xyzzy"1023 <div id="rfc.figure.u.11"></div><pre class="text"> If-None-Match: "xyzzy" 1031 1024 If-None-Match: W/"xyzzy" 1032 1025 If-None-Match: "xyzzy", "r2d2xxxx", "c3piozzzz" … … 1040 1033 method; instead, respond as detailed below. 1041 1034 </p> 1042 <div id="rfc.figure.u.1 3"></div><pre class="inline"><span id="rfc.iref.g.9"></span> <a href="#header.if-modified-since" class="smpl">If-Modified-Since</a> = <a href="#notation" class="smpl">HTTP-date</a>1035 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.9"></span> <a href="#header.if-modified-since" class="smpl">If-Modified-Since</a> = <a href="#imported.abnf" class="smpl">HTTP-date</a> 1043 1036 </pre><p id="rfc.section.3.3.p.3">An example of the field is:</p> 1044 <div id="rfc.figure.u.1 4"></div><pre class="text"> If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT1037 <div id="rfc.figure.u.13"></div><pre class="text"> If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT 1045 1038 </pre><p id="rfc.section.3.3.p.5">A GET method with an If-Modified-Since header field and no <a href="p5-range.html#range.retrieval.requests" class="smpl">Range</a> header field requests that the selected representation be transferred only if it has been modified since the date given by 1046 1039 the If-Modified-Since header field. The algorithm for determining this includes the following cases: … … 1080 1073 representation has been modified since the time specified in this field, then the server <em class="bcp14">MUST NOT</em> perform the requested operation and <em class="bcp14">MUST</em> instead respond with the <a href="#status.412" class="smpl">412 (Precondition Failed)</a> status code. If the selected representation has not been modified since the time specified in this field, the server <em class="bcp14">SHOULD</em> perform the request method as if the If-Unmodified-Since header field were not present. 1081 1074 </p> 1082 <div id="rfc.figure.u.1 5"></div><pre class="inline"><span id="rfc.iref.g.10"></span> <a href="#header.if-unmodified-since" class="smpl">If-Unmodified-Since</a> = <a href="#notation" class="smpl">HTTP-date</a>1075 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.10"></span> <a href="#header.if-unmodified-since" class="smpl">If-Unmodified-Since</a> = <a href="#imported.abnf" class="smpl">HTTP-date</a> 1083 1076 </pre><p id="rfc.section.3.4.p.3">An example of the field is:</p> 1084 <div id="rfc.figure.u.1 6"></div><pre class="text"> If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT1077 <div id="rfc.figure.u.15"></div><pre class="text"> If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT 1085 1078 </pre><p id="rfc.section.3.4.p.5">If a request normally (i.e., in absence of the If-Unmodified-Since header field) would result in anything other than a <a href="p2-semantics.html#status.2xx" class="smpl">2xx (Successful)</a> or <a href="#status.412" class="smpl">412 (Precondition Failed)</a> status code, the If-Unmodified-Since header field <em class="bcp14">SHOULD</em> be ignored. 1086 1079 </p> … … 1099 1092 as if it were the payload of a 200 response. The 304 response <em class="bcp14">MUST NOT</em> contain a message-body, and thus is always terminated by the first empty line after the header fields. 1100 1093 </p> 1101 <p id="rfc.section.4.1.p.2">A 304 response <em class="bcp14">MUST</em> include a <a href="p2-semantics.html#header.date" class="smpl">Date</a> header field (<a href="p2-semantics.html#header.date" title="Date">Section 9.10</a> of <a href="#Part2" id="rfc.xref.Part2. 6"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>) unless the origin server does not have a clock that can provide a reasonable approximation of the current time. If a <a href="p2-semantics.html#status.200" class="smpl">2001094 <p id="rfc.section.4.1.p.2">A 304 response <em class="bcp14">MUST</em> include a <a href="p2-semantics.html#header.date" class="smpl">Date</a> header field (<a href="p2-semantics.html#header.date" title="Date">Section 9.10</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>) unless the origin server does not have a clock that can provide a reasonable approximation of the current time. If a <a href="p2-semantics.html#status.200" class="smpl">200 1102 1095 (OK)</a> response to the same request would have included any of the header fields <a href="p6-cache.html#header.cache-control" class="smpl">Cache-Control</a>, <a href="p2-semantics.html#header.content-location" class="smpl">Content-Location</a>, <a href="#header.etag" class="smpl">ETag</a>, <a href="p6-cache.html#header.expires" class="smpl">Expires</a>, or <a href="p6-cache.html#header.vary" class="smpl">Vary</a>, then those same header fields <em class="bcp14">MUST</em> be sent in a 304 response. 1103 1096 </p> … … 1258 1251 <p id="rfc.section.6.2.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 1259 1252 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 1260 <p id="rfc.section.7.p.1">No additional security considerations have been identified beyond those applicable to HTTP in general <a href="#Part1" id="rfc.xref.Part1. 8"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.1253 <p id="rfc.section.7.p.1">No additional security considerations have been identified beyond those applicable to HTTP in general <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 1261 1254 </p> 1262 1255 <p id="rfc.section.7.p.2">The validators defined by this specification are not intended to ensure the validity of a representation, guard against malicious … … 1266 1259 </p> 1267 1260 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 1268 <p id="rfc.section.8.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1. 9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.1261 <p id="rfc.section.8.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 1269 1262 </p> 1270 1263 <h1 id="rfc.references"><a id="rfc.section.9" href="#rfc.section.9">9.</a> References … … 1342 1335 <p id="rfc.section.A.p.3">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Precondition Header Fields">Section 3</a>) 1343 1336 </p> 1344 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 1345 <div id="rfc.figure.u.17"></div> <pre class="inline"><a href="#header.etag" class="smpl">ETag</a> = entity-tag 1346 1347 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part2], Section 5.1> 1337 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="imported.abnf" href="#imported.abnf">Imported ABNF</a></h1> 1338 <p id="rfc.section.B.p.1">The following core rules are included by reference, as defined in <a href="#RFC5234" id="rfc.xref.RFC5234.2"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>, <a href="http://tools.ietf.org/html/rfc5234#appendix-B.1">Appendix B.1</a>: ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double quote), HEXDIG 1339 (hexadecimal 0-9/A-F/a-f), LF (line feed), OCTET (any 8-bit sequence of data), SP (space), and VCHAR (any visible US-ASCII 1340 character). 1341 </p> 1342 <p id="rfc.section.B.p.2">The rules below are defined in <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>: 1343 </p> 1344 <div id="rfc.figure.u.16"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 1345 <a href="#imported.abnf" class="smpl">obs-text</a> = <obs-text, defined in <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 1346 </pre><p id="rfc.section.B.p.4">The rules below are defined in other parts:</p> 1347 <div id="rfc.figure.u.17"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Semantics and Payloads">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 5.1</a>> 1348 </pre><h1 id="rfc.section.C"><a href="#rfc.section.C">C.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 1349 <div id="rfc.figure.u.18"></div> <pre class="inline"><a href="#header.etag" class="smpl">ETag</a> = entity-tag 1350 1351 <a href="#imported.abnf" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part2], Section 5.1> 1348 1352 1349 1353 <a href="#header.if-match" class="smpl">If-Match</a> = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS … … 1356 1360 <a href="#header.last-modified" class="smpl">Last-Modified</a> = HTTP-date 1357 1361 1358 <a href="# notation" class="smpl">OWS</a> = <OWS, defined in [Part1], Section 3.2.1>1362 <a href="#imported.abnf" class="smpl">OWS</a> = <OWS, defined in [Part1], Section 3.2.1> 1359 1363 1360 1364 <a href="#header.etag" class="smpl">entity-tag</a> = [ weak ] opaque-tag … … 1362 1366 / obs-text 1363 1367 1364 <a href="# notation" class="smpl">obs-text</a> = <obs-text, defined in [Part1], Section 3.2.4>1368 <a href="#imported.abnf" class="smpl">obs-text</a> = <obs-text, defined in [Part1], Section 3.2.4> 1365 1369 <a href="#header.etag" class="smpl">opaque-tag</a> = DQUOTE *etagc DQUOTE 1366 1370 1367 1371 <a href="#header.etag" class="smpl">weak</a> = %x57.2F ; W/ 1368 </pre> <h1 id="rfc.section. C"><a href="#rfc.section.C">C.</a> <a id="change.log" href="#change.log">Change Log (to be removed by RFC Editor before publication)</a></h1>1369 <p id="rfc.section. C.p.1">Changes up to the first Working Group Last Call draft are summarized in <<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-19#appendix-C">http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-19#appendix-C</a>>.1370 </p> 1371 <h2 id="rfc.section. C.1"><a href="#rfc.section.C.1">C.1</a> <a id="changes.since.19" href="#changes.since.19">Since draft-ietf-httpbis-p4-conditional-19</a></h2>1372 <p id="rfc.section. C.1.p.1">Closed issues: </p>1372 </pre> <h1 id="rfc.section.D"><a href="#rfc.section.D">D.</a> <a id="change.log" href="#change.log">Change Log (to be removed by RFC Editor before publication)</a></h1> 1373 <p id="rfc.section.D.p.1">Changes up to the first Working Group Last Call draft are summarized in <<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-19#appendix-C">http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-19#appendix-C</a>>. 1374 </p> 1375 <h2 id="rfc.section.D.1"><a href="#rfc.section.D.1">D.1</a> <a id="changes.since.19" href="#changes.since.19">Since draft-ietf-httpbis-p4-conditional-19</a></h2> 1376 <p id="rfc.section.D.1.p.1">Closed issues: </p> 1373 1377 <ul> 1374 1378 <li> <<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/241">http://tools.ietf.org/wg/httpbis/trac/ticket/241</a>>: "Need to clarify eval order/interaction of conditional headers" … … 1450 1454 </li> 1451 1455 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 1452 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4"> 1.2</a>, <a href="#rfc.xref.Part1.5">1.2</a>, <a href="#rfc.xref.Part1.6">1.2</a>, <a href="#rfc.xref.Part1.7">2.3.3</a>, <a href="#rfc.xref.Part1.8">7</a>, <a href="#rfc.xref.Part1.9">8</a>, <a href="#Part1"><b>9.1</b></a><ul>1456 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2.3.3</a>, <a href="#rfc.xref.Part1.5">7</a>, <a href="#rfc.xref.Part1.6">8</a>, <a href="#Part1"><b>9.1</b></a>, <a href="#rfc.xref.Part1.7">B</a>, <a href="#rfc.xref.Part1.8">B</a>, <a href="#rfc.xref.Part1.9">B</a><ul> 1453 1457 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.3">1.2</a></li> 1454 1458 <li><em>Section 2</em> <a href="#rfc.xref.Part1.2">1.1</a></li> 1455 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1. 5">1.2</a></li>1456 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1. 6">1.2</a></li>1457 <li><em>Section 4</em> <a href="#rfc.xref.Part1. 7">2.3.3</a></li>1458 <li><em>Section 9</em> <a href="#rfc.xref.Part1. 9">8</a></li>1459 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.8">B</a></li> 1460 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.9">B</a></li> 1461 <li><em>Section 4</em> <a href="#rfc.xref.Part1.4">2.3.3</a></li> 1462 <li><em>Section 9</em> <a href="#rfc.xref.Part1.6">8</a></li> 1459 1463 </ul> 1460 1464 </li> 1461 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">1</a>, <a href="#rfc.xref.Part2.2"> 1.2</a>, <a href="#rfc.xref.Part2.3">1.2</a>, <a href="#rfc.xref.Part2.4">2.3.3</a>, <a href="#rfc.xref.Part2.5">2.3.3</a>, <a href="#rfc.xref.Part2.6">4.1</a>, <a href="#Part2"><b>9.1</b></a><ul>1462 <li><em>Section 5.1</em> <a href="#rfc.xref.Part2. 3">1.2</a></li>1463 <li><em>Section 8</em> <a href="#rfc.xref.Part2. 4">2.3.3</a></li>1464 <li><em>Section 9.3</em> <a href="#rfc.xref.Part2. 5">2.3.3</a></li>1465 <li><em>Section 9.10</em> <a href="#rfc.xref.Part2. 6">4.1</a></li>1465 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">1</a>, <a href="#rfc.xref.Part2.2">2.3.3</a>, <a href="#rfc.xref.Part2.3">2.3.3</a>, <a href="#rfc.xref.Part2.4">4.1</a>, <a href="#Part2"><b>9.1</b></a>, <a href="#rfc.xref.Part2.5">B</a><ul> 1466 <li><em>Section 5.1</em> <a href="#rfc.xref.Part2.5">B</a></li> 1467 <li><em>Section 8</em> <a href="#rfc.xref.Part2.2">2.3.3</a></li> 1468 <li><em>Section 9.3</em> <a href="#rfc.xref.Part2.3">2.3.3</a></li> 1469 <li><em>Section 9.10</em> <a href="#rfc.xref.Part2.4">4.1</a></li> 1466 1470 </ul> 1467 1471 </li> … … 1482 1486 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">6.2</a>, <a href="#RFC3864"><b>9.2</b></a></li> 1483 1487 <li><em>RFC4918</em> <a href="#rfc.xref.RFC4918.1">2</a>, <a href="#RFC4918"><b>9.2</b></a></li> 1484 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="# rfc.xref.RFC5234.2">1.2</a>, <a href="#RFC5234"><b>9.1</b></a><ul>1485 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2"> 1.2</a></li>1488 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#RFC5234"><b>9.1</b></a>, <a href="#rfc.xref.RFC5234.2">B</a><ul> 1489 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2">B</a></li> 1486 1490 </ul> 1487 1491 </li>
Note: See TracChangeset
for help on using the changeset viewer.