Changeset 61 for draft-ietf-httpbis/diffs/draft-ietf-httpbis-p5-range-00-from-rfc2616-symrefs.diff.html
- Timestamp:
- 18/12/07 13:07:35 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/diffs/draft-ietf-httpbis-p5-range-00-from-rfc2616-symrefs.diff.html
r59 r61 1 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 2 <!-- Generated by rfcdiff 1.34: rfcdiff --> 3 <!-- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional" > -->4 <!-- System: Darwin kiwi.local 8.11.0 Darwin Kernel Version 8.11.0: Wed Oct 10 18:26:00 PDT 2007; root:xnu-792.24.17~1/RELEASE_PPC Power Macintosh powerpc -->5 <!-- Using awk: /usr/local/bin/gawk: GNU Awk 3.1.6 -->6 <!-- Using diff: /usr/bin/diff: diff (GNU diffutils) 2.8.1 -->7 <!-- Using wdiff: /usr/local/bin/wdiff: wdiff (Free wdiff) 0.5g -->8 3 <html> 9 4 <head> … … 43 38 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 44 39 <tr><td><a name="diff0001" /></td></tr> 45 <tr><td class="lineno" valign="top"></td><td class="lblock">Network Working Group R. <span class="delete">Fielding</span></td><td> </td><td class="rblock">Network Working Group R. <span class="insert">Fielding, Ed.</span></td><td class="lineno" valign="top"></td></tr>46 <tr><td class="lineno" valign="top"></td><td class="lblock">Internet-Draft <span class="delete">UC Irvine</span></td><td> </td><td class="rblock">Internet-Draft <span class="insert">Day Software</span></td><td class="lineno" valign="top"></td></tr>47 <tr><td class="lineno" valign="top"></td><td class="lblock">Obsoletes: <span class="delete">2068 (if approved)</span> J. Gettys</td><td> </td><td class="rblock">Obsoletes: <span class="insert">2068, 2616</span>J. Gettys</td><td class="lineno" valign="top"></td></tr>48 <tr><td class="lineno" valign="top"></td><td class="lblock"> Intended status: Standards Track <span class="delete">Compaq/W3C</span></td><td> </td><td class="rblock"><span class="insert">(if approved) One Laptop per Child</span></td><td class="lineno" valign="top"></td></tr>49 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Expires: December 3, 1999 </span> J. Mogul</td><td> </td><td class="rblock">Intended status: Standards TrackJ. Mogul</td><td class="lineno" valign="top"></td></tr>50 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Compaq</span></td><td> </td><td class="rblock"><span class="insert">Expires: June 19, 2008 HP</span></td><td class="lineno" valign="top"></td></tr>40 <tr><td class="lineno" valign="top"></td><td class="lblock">Network Working Group <span class="delete"> R. Fielding</span></td><td> </td><td class="rblock">Network Working Group <span class="insert">R. Fielding, Ed.</span></td><td class="lineno" valign="top"></td></tr> 41 <tr><td class="lineno" valign="top"></td><td class="lblock">Internet-Draft <span class="delete"> UC Irvin</span>e</td><td> </td><td class="rblock">Internet-Draft <span class="insert">Day Softwar</span>e</td><td class="lineno" valign="top"></td></tr> 42 <tr><td class="lineno" valign="top"></td><td class="lblock">Obsoletes: 2068<span class="delete"> (if approved)</span> J. Gettys</td><td> </td><td class="rblock">Obsoletes: 2068<span class="insert">, 2616 </span> J. Gettys</td><td class="lineno" valign="top"></td></tr> 43 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Intended status: Standards Track Compaq/W3C</span></td><td> </td><td class="rblock"><span class="insert">(if approved) One Laptop per Child</span></td><td class="lineno" valign="top"></td></tr> 44 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Expires: December 3, 1999 </span> J. Mogul</td><td> </td><td class="rblock"><span class="insert">Intended status: Standards Track</span> J. Mogul</td><td class="lineno" valign="top"></td></tr> 45 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Compaq</span></td><td> </td><td class="rblock"><span class="insert">Expires: June 20, 2008 HP</span></td><td class="lineno" valign="top"></td></tr> 51 46 <tr><td class="lineno" valign="top"></td><td class="left"> H. Frystyk</td><td> </td><td class="right"> H. Frystyk</td><td class="lineno" valign="top"></td></tr> 52 47 <tr><td><a name="diff0002" /></td></tr> … … 60 55 <tr><td class="lineno" valign="top"></td><td class="left"> W3C/MIT</td><td> </td><td class="right"> W3C/MIT</td><td class="lineno" valign="top"></td></tr> 61 56 <tr><td><a name="diff0004" /></td></tr> 62 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Hypertext Transfer Protocol -- HTTP/1.1</span></td><td> </td><td class="rblock"> <span class="insert">December 17, 2007</span></td><td class="lineno" valign="top"></td></tr>63 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> rfc2616-symrefs</span></td><td> </td><td class="rblock"><span class="insert"></span></td><td class="lineno" valign="top"></td></tr>57 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Hypertext Transfer Protocol -- HTTP/1.1</span></td><td> </td><td class="rblock"> <span class="insert"> December 18, 2007</span></td><td class="lineno" valign="top"></td></tr> 58 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">rfc2616-symrefs</span></td><td> </td><td class="rblock"> <span class="insert"> </span></td><td class="lineno" valign="top"></td></tr> 64 59 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> HTTP/1.1, part 5: Range Requests and Partial Responses</span></td><td class="lineno" valign="top"></td></tr> 65 60 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> draft-ietf-httpbis-p5-range-00</span></td><td class="lineno" valign="top"></td></tr> … … 87 82 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 88 83 <tr><td><a name="diff0005" /></td></tr> 89 <tr><td class="lineno" valign="top"></td><td class="lblock"> This Internet-Draft will expire on <span class="delete">December 3, 1999</span>.</td><td> </td><td class="rblock"> This Internet-Draft will expire on <span class="insert">June 19, 2008</span>.</td><td class="lineno" valign="top"></td></tr>84 <tr><td class="lineno" valign="top"></td><td class="lblock"> This Internet-Draft will expire on <span class="delete">December 3, 1999</span>.</td><td> </td><td class="rblock"> This Internet-Draft will expire on <span class="insert">June 20, 2008</span>.</td><td class="lineno" valign="top"></td></tr> 90 85 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 91 86 <tr><td class="lineno" valign="top"></td><td class="left">Copyright Notice</td><td> </td><td class="right">Copyright Notice</td><td class="lineno" valign="top"></td></tr> … … 99 94 <tr><td class="lineno" valign="top"></td><td class="left"> protocol for distributed, collaborative, hypermedia information</td><td> </td><td class="right"> protocol for distributed, collaborative, hypermedia information</td><td class="lineno" valign="top"></td></tr> 100 95 <tr><td><a name="diff0007" /></td></tr> 101 <tr><td class="lineno" valign="top"></td><td class="lblock"> systems. <span class="delete">It is a generic, stateless, protocol which can be used for</span></td><td> </td><td class="rblock"> systems. HTTP has been in use by the <span class="insert">World Wide</span> Web global</td><td class="lineno" valign="top"></td></tr>102 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> many tasks beyond its use for hypertext, such as name servers and</span></td><td> </td><td class="rblock"> information initiative since 1990. This <span class="insert">document is Part 5 of the</span></td><td class="lineno" valign="top"></td></tr>103 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> distributed object management systems, through extension of its</span></td><td> </td><td class="rblock"><span class="insert"> seven-part</span> specification <span class="insert">that</span> defines the protocol referred to as</td><td class="lineno" valign="top"></td></tr>104 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">request methods, error codes and headers [RFC2324]. A feature of</span></td><td> </td><td class="rblock"> <span class="insert">"HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 5 defines</span></td><td class="lineno" valign="top"></td></tr>105 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> HTTP is the typing and negotiation of data representation, allowing</span></td><td> </td><td class="rblock"><span class="insert"> range-specific requests</span> and <span class="insert">the rules for constructing and combining</span></td><td class="lineno" valign="top"></td></tr>106 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> systems to be built independently of the data being transferred.</span></td><td> </td><td class="rblock"><span class="insert"> responses</span> to <span class="insert">those requests.</span></td><td class="lineno" valign="top"></td></tr>107 <tr><td class="lineno" valign="top"></td><td class="lblock"> 108 <tr><td class="lineno" valign="top"></td><td class="lblock"> HTTP has been in use by the <span class="delete">World-Wide</span> Web global information</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>109 <tr><td class="lineno" valign="top"></td><td class="lblock"> initiative since 1990. This specification defines the protocol</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>110 <tr><td class="lineno" valign="top"></td><td class="lblock"> referred to as <span class="delete">"HTTP/1.1",</span> and <span class="delete">is an update</span> to <span class="delete">RFC 2068 [RFC2068].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>96 <tr><td class="lineno" valign="top"></td><td class="lblock"> systems. <span class="delete">It is a generic, stateless, protocol which can be used for</span></td><td> </td><td class="rblock"> systems. <span class="insert">HTTP has been in use by the World Wide Web global</span></td><td class="lineno" valign="top"></td></tr> 97 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">many tasks beyond its use for hypertext, such as name servers and</span></td><td> </td><td class="rblock"> <span class="insert">information initiative since 1990. This document is Part 5 of the</span></td><td class="lineno" valign="top"></td></tr> 98 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">distributed object management systems, through extension of it</span>s</td><td> </td><td class="rblock"> <span class="insert">seven-part specification that defines the protocol referred to a</span>s</td><td class="lineno" valign="top"></td></tr> 99 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">request methods, error codes and headers [RFC2324]. A feature of</span></td><td> </td><td class="rblock"> <span class="insert">"HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 5 defines</span></td><td class="lineno" valign="top"></td></tr> 100 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">HTTP is the typing and negotiation of data representation, allow</span>ing</td><td> </td><td class="rblock"> <span class="insert">range-specific requests and the rules for constructing and combin</span>ing</td><td class="lineno" valign="top"></td></tr> 101 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">systems to be built independently of the data being transferred</span>.</td><td> </td><td class="rblock"> <span class="insert">responses to those requests</span>.</td><td class="lineno" valign="top"></td></tr> 102 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 103 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP has been in use by the World-Wide Web global information</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 104 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> initiative since 1990. This specification defines the protocol</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 105 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> referred to as "HTTP/1.1", and is an update to RFC 2068 [RFC2068].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 111 106 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 112 107 <tr><td class="lineno" valign="top"></td><td class="left">Editorial Note (To be removed by RFC Editor)</td><td> </td><td class="right">Editorial Note (To be removed by RFC Editor)</td><td class="lineno" valign="top"></td></tr> … … 114 109 <tr><td><a name="diff0008" /></td></tr> 115 110 <tr><td class="lineno" valign="top"></td><td class="lblock"> This version of the HTTP specification contains only <span class="delete">XML processing</span></td><td> </td><td class="rblock"> This version of the HTTP specification contains only <span class="insert">minimal</span></td><td class="lineno" valign="top"></td></tr> 116 <tr><td class="lineno" valign="top"></td><td class="lblock"> changes from [RFC2616] <span class="delete">in internet-draft form</span> for use in <span class="delete">creating</span></td><td> </td><td class="rblock"><span class="insert"> editorial</span> changes from [RFC2616] <span class="insert">(abstract, introductory paragraph,</span></td><td class="lineno" valign="top"></td></tr>117 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> diffs.</span></td><td> </td><td class="rblock"><span class="insert">and authors' addresses). All other changes are due to partitioning</span></td><td class="lineno" valign="top"></td></tr>118 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> the original into seven mostly independent parts. The intent is </span> for</td><td class="lineno" valign="top"></td></tr>119 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"> <span class="insert">readers of future drafts to able to</span> use <span class="insert">draft 00 as the basis for</span></td><td class="lineno" valign="top"></td></tr>111 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">changes from [RFC2616] in internet-draft form for use in creating</span></td><td> </td><td class="rblock"> <span class="insert">editorial changes from [RFC2616] (abstract, introductory paragraph,</span></td><td class="lineno" valign="top"></td></tr> 112 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">diffs.</span></td><td> </td><td class="rblock"> <span class="insert">and authors' addresses). All other changes are due to partitioning</span></td><td class="lineno" valign="top"></td></tr> 113 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> the original into seven mostly independent parts. The intent is for</span></td><td class="lineno" valign="top"></td></tr> 114 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> readers of future drafts to able to use draft 00 as the basis for</span></td><td class="lineno" valign="top"></td></tr> 120 115 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> comparison when the WG makes later changes to the specification text.</span></td><td class="lineno" valign="top"></td></tr> 121 116 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> This draft will shortly be followed by draft 01 (containing the first</span></td><td class="lineno" valign="top"></td></tr> 122 117 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> round of changes that have already been agreed to on the mailing</span></td><td class="lineno" valign="top"></td></tr> 123 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> list). There is no point </span> in <span class="insert">reviewing this draft other than to</span></td><td class="lineno" valign="top"></td></tr>118 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> list). There is no point in reviewing this draft other than to</span></td><td class="lineno" valign="top"></td></tr> 124 119 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> verify that the partitioning has been done correctly. Roy T.</span></td><td class="lineno" valign="top"></td></tr> 125 120 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> Fielding, Yves Lafon, and Julian Reschke will be the editors after</span></td><td class="lineno" valign="top"></td></tr> 126 121 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> draft 00 is submitted.</span></td><td class="lineno" valign="top"></td></tr> 127 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> </span></td><td class="lineno" valign="top"></td></tr>122 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> </span></td><td class="lineno" valign="top"></td></tr> 128 123 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> Discussion of this draft should take place on the HTTPBIS working</span></td><td class="lineno" valign="top"></td></tr> 129 124 <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> group mailing list (ietf-http-wg@w3.org). The current issues list is</span></td><td class="lineno" valign="top"></td></tr> … … 135 130 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 136 131 <tr><td><a name="diff0009" /></td></tr> 137 <tr><td class="lineno" valign="top"></td><td class="lblock"> 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">9</span></td><td> </td><td class="rblock"> 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">4</span></td><td class="lineno" valign="top"></td></tr>138 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.1. Purpose . . . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td> </td><td class="rblock"><span class="insert"> 2. Range Units</span> . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">4</span></td><td class="lineno" valign="top"></td></tr>139 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.2. Requirements . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td> </td><td class="rblock"><span class="insert"> 3. Status Code Definitions</span> . . . . . . . . . . . . . . . . . . . <span class="insert">4</span></td><td class="lineno" valign="top"></td></tr>140 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.3. Terminology . . . . . . . . . . . . . . . . . . . . . . 10</span></td><td> </td><td class="rblock"><span class="insert"> 3.1. 206 Partial Content</span> . . . . . . . . . . . . . . . . . . . <span class="insert">4</span></td><td class="lineno" valign="top"></td></tr>141 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.4. Overall Operation . . . . . . . . . . . . . . . . . . . 14</span></td><td> </td><td class="rblock"><span class="insert"> 3.2. 416 Requested Range Not Satisfiable</span> . . . . . . . . . . . <span class="insert">5</span></td><td class="lineno" valign="top"></td></tr>142 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 2. Notational Conventions and Generic Grammar . . . . . . . . . 16</span></td><td> </td><td class="rblock"><span class="insert"> 4. Combining Byte Ranges</span> . . . . . . . . . . . . . . . . . . . . <span class="insert">5</span></td><td class="lineno" valign="top"></td></tr>143 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 2.1. Augmented BNF . . . . . . . . . . . . . . . . . . . . . 16</span></td><td> </td><td class="rblock"><span class="insert"> 5. Header Field Definitions</span> . . . . . . . . . . . . . . . . . . . <span class="insert">6</span></td><td class="lineno" valign="top"></td></tr>144 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 2.2. Basic Rules . . . . . . . . . . . . . . . . . . . . . . 18</span></td><td> </td><td class="rblock"><span class="insert"> 5.1. Accept-Ranges</span> . . . . . . . . . . . . . . . . . . . . . . <span class="insert">6</span></td><td class="lineno" valign="top"></td></tr>145 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3. Protocol Parameters . . . . . . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock"><span class="insert"> 5.2. Content-Range</span> . . . . . . . . . . . . . . . . . . . . . . <span class="insert">7</span></td><td class="lineno" valign="top"></td></tr>146 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.1. HTTP Version . . . . . . . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock"><span class="insert"> 5.3. If-Range</span> . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>147 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.2. Uniform Resource Identifiers . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock"><span class="insert"> 5.4. Range</span> . . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>148 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.2.1. General Syntax . . . . . . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock"><span class="insert"> 5.4.1. Byte Ranges</span> . . . . . . . . . . . . . . . . . . . . . <span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>149 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.2.2. http URL . . . . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock"><span class="insert"> 5.4.2. Range Retrieval Requests</span> . . . . . . . . . . . . . . . <span class="insert">11</span></td><td class="lineno" valign="top"></td></tr>150 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.2.3. URI Comparison . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock"><span class="insert"> 6. IANA Considerations</span> . . . . . . . . . . . . . . . . . . . . . <span class="insert">12</span></td><td class="lineno" valign="top"></td></tr>151 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3. Date/Time Formats . . . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock"><span class="insert"> 7. Security Considerations</span> . . . . . . . . . . . . . . . . . . . <span class="insert">12</span></td><td class="lineno" valign="top"></td></tr>152 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3.1. Full Date . . . . . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock"><span class="insert"> 8. Acknowledgments</span> . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">12</span></td><td class="lineno" valign="top"></td></tr>153 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3.2. Delta Seconds . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock"><span class="insert"> 9. References</span> . . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">12</span></td><td class="lineno" valign="top"></td></tr>154 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.4. Character Sets . . . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock"><span class="insert"> Appendix A. Internet Media Type multipart/byteranges</span> . . . . . . <span class="insert">13</span></td><td class="lineno" valign="top"></td></tr>155 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.4.1. Missing Charset . . . . . . . . . . . . . . . . . . 25</span></td><td> </td><td class="rblock"><span class="insert"> Appendix B.</span> Changes from RFC 2068 . . . . . . . . . . . . . . . . <span class="insert">14</span></td><td class="lineno" valign="top"></td></tr>156 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.5. Content Codings . . . . . . . . . . . . . . . . . . . . 25</span></td><td> </td><td class="rblock"> Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">15</span></td><td class="lineno" valign="top"></td></tr>157 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.6. Transfer Codings . . . . . . . . . . . . . . . . . . . . 27</span></td><td> </td><td class="rblock"> Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . <span class="insert">. 16</span></td><td class="lineno" valign="top"></td></tr>158 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.6.1. Chunked Transfer Coding . . . . . . . . . . . . . . 28</span></td><td> </td><td class="rblock"> Intellectual Property and Copyright Statements . . . . . . . . . <span class="insert">. 18</span></td><td class="lineno" valign="top"></td></tr>132 <tr><td class="lineno" valign="top"></td><td class="lblock"> 1. Introduction <span class="delete"> . . . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td> </td><td class="rblock"> 1. Introduction <span class="insert">. . . . . . . . . . . . . . . . . . . . . . . . . 4</span></td><td class="lineno" valign="top"></td></tr> 133 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.1. Purpose . . . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td> </td><td class="rblock"> <span class="insert">2. Range Units . . . . . . . . . . . . . . . . . . . . . . . . . 4</span></td><td class="lineno" valign="top"></td></tr> 134 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 1.2. Requirements . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td> </td><td class="rblock"> <span class="insert">3. Status Code Definitions . . . . . . . . . . . . . . . . . . . 4</span></td><td class="lineno" valign="top"></td></tr> 135 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">1.3. Terminology . . . . . . . . . . . . . . . . . . . . . . 10</span></td><td> </td><td class="rblock"> <span class="insert">3.1. 206 Partial Content . . . . . . . . . . . . . . . . . . . 4</span></td><td class="lineno" valign="top"></td></tr> 136 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">1.4. Overall Operation . . . . . . . . . . . . . . . . . . . 14</span></td><td> </td><td class="rblock"> <span class="insert">3.2. 416 Requested Range Not Satisfiable . . . . . . . . . . . 5</span></td><td class="lineno" valign="top"></td></tr> 137 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">2. Notational Conventions and Generic Grammar . . . . . . . . . 16</span></td><td> </td><td class="rblock"> <span class="insert">4. Combining Byte Ranges . . . . . . . . . . . . . . . . . . . . 5</span></td><td class="lineno" valign="top"></td></tr> 138 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 2.1. Augmented BNF . . . . . . . . . . . . . . . . . . . . . 1</span>6</td><td> </td><td class="rblock"> <span class="insert">5. Header Field Definitions . . . . . . . . . . . . . . . . . . . </span>6</td><td class="lineno" valign="top"></td></tr> 139 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">2.2. Basic Rules . . . . . . . . . . . . . . . . . . . . . . 18</span></td><td> </td><td class="rblock"> <span class="insert">5.1. Accept-Ranges . . . . . . . . . . . . . . . . . . . . . . 6</span></td><td class="lineno" valign="top"></td></tr> 140 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">3. Protocol Parameters . . . . . . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock"> <span class="insert"> 5.2. Content-Range . . . . . . . . . . . . . . . . . . . . . . 7</span></td><td class="lineno" valign="top"></td></tr> 141 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">3.1. HTTP Version . . . . . . . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock"> <span class="insert">5.3. If-Range . . . . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td class="lineno" valign="top"></td></tr> 142 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">3.2. Uniform Resource Identifiers . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock"> <span class="insert">5.4. Range . . . . . . . . . . . . . . . . . . . . . . . . . . 9</span></td><td class="lineno" valign="top"></td></tr> 143 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">3.2.1. General Syntax . . . . . . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock"> <span class="insert">5.4.1. Byte Ranges . . . . . . . . . . . . . . . . . . . . . 9</span></td><td class="lineno" valign="top"></td></tr> 144 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">3.2.2. http URL . . . . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock"> <span class="insert">5.4.2. Range Retrieval Requests . . . . . . . . . . . . . . . 11</span></td><td class="lineno" valign="top"></td></tr> 145 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.2.3. URI Comparison . . . . . . . . . . . . . . . . . . . 2</span>2</td><td> </td><td class="rblock"> <span class="insert">6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 1</span>2</td><td class="lineno" valign="top"></td></tr> 146 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3. Date/Time Formats . . . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock"> <span class="insert">7. Security Considerations . . . . . . . . . . . . . . . . . . . 12</span></td><td class="lineno" valign="top"></td></tr> 147 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3.1. Full Date . . . . . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock"> <span class="insert">8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12</span></td><td class="lineno" valign="top"></td></tr> 148 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.3.2. Delta Seconds . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock"> <span class="insert">9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12</span></td><td class="lineno" valign="top"></td></tr> 149 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.4. Character Sets . . . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock"> <span class="insert">Appendix A. Internet Media Type multipart/byteranges . . . . . . 13</span></td><td class="lineno" valign="top"></td></tr> 150 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.4.1. Missing Charset . . . . . . . . . . . . . . . . . . 25</span></td><td> </td><td class="rblock"> <span class="insert">Appendix B. Changes from RFC 2068 . . . . . . . . . . . . . . . . 14</span></td><td class="lineno" valign="top"></td></tr> 151 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.5. Content Codings . . . . . . . . . . . . . . . . . . . . 2</span>5</td><td> </td><td class="rblock"> <span class="insert">Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1</span>5</td><td class="lineno" valign="top"></td></tr> 152 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.6. Transfer Codings . . . . . . . . . . . . . . . . . . . . 27</span></td><td> </td><td class="rblock"> <span class="insert">Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16</span></td><td class="lineno" valign="top"></td></tr> 153 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> 3.6.1. Chunked Transfer Coding . . . . . . . . . . . . . . 2</span>8</td><td> </td><td class="rblock"> <span class="insert">Intellectual Property and Copyright Statements . . . . . . . . . . 1</span>8</td><td class="lineno" valign="top"></td></tr> 159 154 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 3.7. Media Types . . . . . . . . . . . . . . . . . . . . . . 29</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 160 155 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 3.7.1. Canonicalization and Text Defaults . . . . . . . . . 30</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 362 357 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.1.4. Privacy Issues Connected to Accept Headers . . . . . 155</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 363 358 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.2. Attacks Based On File and Path Names . . . . . . . . . . 156</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 364 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.3. DNS Spoofing . . . . . . </span> . . . . . . . . . . . . . . . . <span class="delete">156</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>365 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.4. Location Headers and Spoofing </span> . . . . . . . . . . . . . <span class="delete">157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>366 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.5. Content-Disposition Issues </span> . . . . . . . . . . . . . . . <span class="delete">157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>367 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.6. Authentication Credentials and Idle Clients </span> . . . . . . <span class="delete">157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>368 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.7. Proxies and Caching </span> . . . . . . . . . . . . . . . . . . <span class="delete">158</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>369 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.7.1. Denial of Service Attacks on Proxies </span> . . . . . . . . <span class="delete">159</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>370 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 16. Acknowledgments </span> . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">159</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>371 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 17. References </span> . . . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">161</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>372 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix A. Appendices </span> . . . . . . . . . . . . . . . . . . . . . <span class="delete">165</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>373 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.1. Internet Media Type message/http and application/http </span> . <span class="delete">165</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>374 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.2. Internet Media Type multipart/byteranges </span> . . . . . . . . <span class="delete">166</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>375 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.3. Tolerant Applications </span> . . . . . . . . . . . . . . . . . <span class="delete">167</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>359 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.3. DNS Spoofing . . . . . . . . . . . . . . . . . . . . . . 156</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 360 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.4. Location Headers and Spoofing . . . . . . . . . . . . . 157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 361 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.5. Content-Disposition Issues . . . . . . . . . . . . . . . 157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 362 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.6. Authentication Credentials and Idle Clients . . . . . . 157</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 363 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.7. Proxies and Caching . . . . . . . . . . . . . . . . . . 158</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 364 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 15.7.1. Denial of Service Attacks on Proxies . . . . . . . . 159</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 365 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 16. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 159</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 366 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 17. References . . . . . . . . . . . . . . . . . . . . . . . . . 161</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 367 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix A. Appendices . . . . . . . . . . . . . . . . . . . . . 165</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 368 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.1. Internet Media Type message/http and application/http . 165</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 369 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.2. Internet Media Type multipart/byteranges . . . . . . . . 166</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 370 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.3. Tolerant Applications . . . . . . . . . . . . . . . . . 167</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 376 371 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4. Differences Between HTTP Entities and RFC 2045</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 377 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Entities </span> . . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">168</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>378 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.1. MIME-Version </span> . . . . . . . . . . . . . . . . . . . . <span class="delete">169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>379 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.2. Conversion to Canonical Form </span> . . . . . . . . . . . . <span class="delete">169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>380 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.3. Conversion of Date Formats </span> . . . . . . . . . . . . . <span class="delete">169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>381 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.4. Introduction of Content-Encoding </span> . . . . . . . . . . <span class="delete">170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>382 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.5. No Content-Transfer-Encoding </span> . . . . . . . . . . . . <span class="delete">170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>383 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.6. Introduction of Transfer-Encoding </span> . . . . . . . . . <span class="delete">170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>384 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.7. MHTML and Line Length Limitations </span> . . . . . . . . . <span class="delete">171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>385 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.5. Additional Features </span> . . . . . . . . . . . . . . . . . . <span class="delete">171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>386 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.5.1. Content-Disposition </span> . . . . . . . . . . . . . . . . <span class="delete">171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>387 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6. Compatibility with Previous Versions </span> . . . . . . . . . . <span class="delete">172</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>388 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.1. Changes from HTTP/1.0 </span> . . . . . . . . . . . . . . . <span class="delete">173</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>389 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.2. Compatibility with HTTP/1.0 Persistent Connections </span> . <span class="delete">174</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>390 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.3. </span> Changes from RFC 2068 . . . . . . . . . . . . . . . <span class="delete">174</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>391 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix B. Index . . . . . . . . . . . . . . . . . . . </span> . <span class="delete">. . . 177</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>392 <tr><td class="lineno" valign="top"></td><td class="lblock"> Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">177</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>393 <tr><td class="lineno" valign="top"></td><td class="lblock"> Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . <span class="delete">188</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>394 <tr><td class="lineno" valign="top"></td><td class="lblock"> Intellectual Property and Copyright Statements . . . . . . . . . <span class="delete">190</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>372 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Entities . . . . . . . . . . . . . . . . . . . . . . . . 168</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 373 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.1. MIME-Version . . . . . . . . . . . . . . . . . . . . 169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 374 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.2. Conversion to Canonical Form . . . . . . . . . . . . 169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 375 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.3. Conversion of Date Formats . . . . . . . . . . . . . 169</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 376 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.4. Introduction of Content-Encoding . . . . . . . . . . 170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 377 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.5. No Content-Transfer-Encoding . . . . . . . . . . . . 170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 378 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.6. Introduction of Transfer-Encoding . . . . . . . . . 170</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 379 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.4.7. MHTML and Line Length Limitations . . . . . . . . . 171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 380 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.5. Additional Features . . . . . . . . . . . . . . . . . . 171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 381 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.5.1. Content-Disposition . . . . . . . . . . . . . . . . 171</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 382 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6. Compatibility with Previous Versions . . . . . . . . . . 172</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 383 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.1. Changes from HTTP/1.0 . . . . . . . . . . . . . . . 173</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 384 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.2. Compatibility with HTTP/1.0 Persistent Connections . 174</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 385 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A.6.3. Changes from RFC 2068 . . . . . . . . . . . . . . . 174</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 386 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix B. Index . . . . . . . . . . . . . . . . . . . . . . . 177</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 387 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 388 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 188</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 389 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Intellectual Property and Copyright Statements . . . . . . . . . 190</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 395 390 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 396 391 <tr><td class="lineno" valign="top"></td><td class="left">1. Introduction</td><td> </td><td class="right">1. Introduction</td><td class="lineno" valign="top"></td></tr> 397 392 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 398 393 <tr><td><a name="diff0010" /></td></tr> 399 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">1.1. Purpose</span></td><td> </td><td class="rblock"> This <span class="insert">document will</span> define <span class="insert">aspects</span> of HTTP <span class="insert">related</span> to <span class="insert">range requests,</span></td><td class="lineno" valign="top"></td></tr>400 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"></span></td><td> </td><td class="rblock"><span class="insert"> partial responses,</span> and the <span class="insert">multipart/byteranges media</span> type. <span class="insert">Right</span></td><td class="lineno" valign="top"></td></tr>401 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> The Hypertext Transfer Protocol (HTTP) is an application-level</span></td><td> </td><td class="rblock"><span class="insert"> now</span> it only <span class="insert">includes</span> the <span class="insert">extracted relevant sections</span> of RFC <span class="insert">2616</span></td><td class="lineno" valign="top"></td></tr>402 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> protocol for distributed, collaborative, hypermedia information</span></td><td> </td><td class="rblock"><span class="insert">[RFC2616] without edit.</span></td><td class="lineno" valign="top"></td></tr>394 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">1.1. Purpose</span></td><td> </td><td class="rblock"><span class="insert"> This document will define aspects of HTTP related to range requests,</span></td><td class="lineno" valign="top"></td></tr> 395 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete"> </span></td><td> </td><td class="rblock"> <span class="insert">partial responses, and the multipart/byteranges media type. Right</span></td><td class="lineno" valign="top"></td></tr> 396 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">The Hypertext Transfer Protocol (HTTP) is an application-level</span></td><td> </td><td class="rblock"> <span class="insert">now it only includes the extracted relevant sections of RFC 2616</span></td><td class="lineno" valign="top"></td></tr> 397 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">protocol for distributed, collaborative, hypermedia information</span></td><td> </td><td class="rblock"> <span class="insert">[RFC2616] without edit.</span></td><td class="lineno" valign="top"></td></tr> 403 398 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> systems. HTTP has been in use by the World-Wide Web global</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 404 399 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> information initiative since 1990. The first version of HTTP,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 415 410 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> communicating applications to determine each other's true</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 416 411 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> capabilities.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 417 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>412 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 418 413 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This specification defines the protocol referred to as "HTTP/1.1".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 419 414 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This protocol includes more stringent requirements than HTTP/1.0 in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 420 415 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> order to ensure reliable implementation of its features.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 421 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>416 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 422 417 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Practical information systems require more functionality than simple</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 423 418 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> retrieval, including search, front-end update, and annotation. HTTP</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 430 425 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> as defined by the Multipurpose Internet Mail Extensions (MIME)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 431 426 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [RFC2045].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 432 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>427 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 433 428 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP is also used as a generic protocol for communication between</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 434 429 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> user agents and proxies/gateways to other Internet systems, including</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 437 432 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> allows basic hypermedia access to resources available from diverse</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 438 433 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> applications.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 439 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>434 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 440 435 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">1.2. Requirements</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 441 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>436 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 442 437 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 443 438 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 444 439 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> document are to be interpreted as described in RFC 2119 [RFC2119].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 445 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>440 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 446 441 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An implementation is not compliant if it fails to satisfy one or more</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 447 442 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of the MUST or REQUIRED level requirements for the protocols it</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 452 447 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> level requirements for its protocols is said to be "conditionally</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 453 448 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> compliant."</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 454 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>449 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 455 450 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">1.3. Terminology</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 456 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>451 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 457 452 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This specification uses a number of terms to refer to the roles</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 458 453 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> played by participants in, and objects of, the HTTP communication.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 459 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>454 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 460 455 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> connection</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 461 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>456 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 462 457 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A transport layer virtual circuit established between two programs</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 463 458 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> for the purpose of communication.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 464 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>459 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 465 460 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 466 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>461 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 467 462 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The basic unit of HTTP communication, consisting of a structured</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 468 463 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> sequence of octets matching the syntax defined in Section 4 and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 469 464 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transmitted via the connection.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 470 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>465 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 471 466 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 472 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>467 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 473 468 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An HTTP request message, as defined in Section 5.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 474 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>469 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 475 470 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> response</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 476 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>471 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 477 472 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An HTTP response message, as defined in Section 6.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 478 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>473 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 479 474 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> resource</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 480 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>475 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 481 476 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A network data object or service that can be identified by a URI,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 482 477 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> as defined in Section 3.2. Resources may be available in multiple</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 483 478 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> representations (e.g. multiple languages, data formats, size, and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 484 479 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> resolutions) or vary in other ways.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 485 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>480 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 486 481 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 487 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>482 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 488 483 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The information transferred as the payload of a request or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 489 484 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> response. An entity consists of metainformation in the form of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 490 485 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-header fields and content in the form of an entity-body, as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 491 486 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> described in Section 7.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 492 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>487 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 493 488 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> representation</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 494 489 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An entity included with a response that is subject to content</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 495 490 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> negotiation, as described in Section 12. There may exist multiple</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 496 491 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> representations associated with a particular response status.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 497 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>492 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 498 493 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> content negotiation</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 499 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>494 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 500 495 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The mechanism for selecting the appropriate representation when</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 501 496 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> servicing a request, as described in Section 12. The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 502 497 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> representation of entities in any response can be negotiated</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 503 498 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (including error responses).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 504 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>499 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 505 500 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> variant</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 506 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>501 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 507 502 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A resource may have one, or more than one, representation(s)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 508 503 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> associated with it at any given instant. Each of these</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 510 505 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> does not necessarily imply that the resource is subject to content</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 511 506 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> negotiation.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 512 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>507 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 513 508 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> client</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 514 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>509 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 515 510 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A program that establishes connections for the purpose of sending</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 516 511 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requests.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 517 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>512 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 518 513 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> user agent</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 519 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>514 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 520 515 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The client which initiates a request. These are often browsers,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 521 516 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> editors, spiders (web-traversing robots), or other end user tools.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 522 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>517 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 523 518 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> server</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 524 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>519 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 525 520 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An application program that accepts connections in order to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 526 521 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> service requests by sending back responses. Any given program may</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 531 526 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> proxy, gateway, or tunnel, switching behavior based on the nature</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 532 527 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of each request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 533 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>528 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 534 529 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> origin server</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 535 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>530 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 536 531 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The server on which a given resource resides or is to be created.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 537 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>532 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 538 533 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> proxy</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 539 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>534 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 540 535 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An intermediary program which acts as both a server and a client</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 541 536 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> for the purpose of making requests on behalf of other clients.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 542 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>537 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 543 538 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Requests are serviced internally or by passing them on, with</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 544 539 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> possible translation, to other servers. A proxy MUST implement</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 553 548 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> behavior is explicitly stated, the HTTP proxy requirements apply</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 554 549 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to both types of proxies.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 555 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>550 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 556 551 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> gateway</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 557 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>552 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 558 553 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A server which acts as an intermediary for some other server.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 559 554 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Unlike a proxy, a gateway receives requests as if it were the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 560 555 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> origin server for the requested resource; the requesting client</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 561 556 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> may not be aware that it is communicating with a gateway.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 562 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>557 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 563 558 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> tunnel</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 564 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>559 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 565 560 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An intermediary program which is acting as a blind relay between</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 566 561 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> two connections. Once active, a tunnel is not considered a party</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 568 563 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> initiated by an HTTP request. The tunnel ceases to exist when</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 569 564 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> both ends of the relayed connections are closed.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 570 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>565 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 571 566 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> cache</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 572 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>567 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 573 568 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A program's local store of response messages and the subsystem</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 574 569 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that controls its message storage, retrieval, and deletion. A</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 577 572 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requests. Any client or server may include a cache, though a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 578 573 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> cache cannot be used by a server that is acting as a tunnel.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 579 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>574 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 580 575 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> cacheable</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 581 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>576 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 582 577 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A response is cacheable if a cache is allowed to store a copy of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 583 578 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the response message for use in answering subsequent requests.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 586 581 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> be additional constraints on whether a cache can use the cached</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 587 582 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> copy for a particular request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 588 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>583 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 589 584 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> first-hand</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 590 585 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A response is first-hand if it comes directly and without</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 592 587 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> proxies. A response is also first-hand if its validity has just</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 593 588 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> been checked directly with the origin server.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 594 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>589 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 595 590 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> explicit expiration time</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 596 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>591 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 597 592 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The time at which the origin server intends that an entity should</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 598 593 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> no longer be returned by a cache without further validation.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 599 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>594 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 600 595 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> heuristic expiration time</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 601 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>596 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 602 597 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An expiration time assigned by a cache when no explicit expiration</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 603 598 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> time is available.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 604 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>599 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 605 600 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> age</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 606 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>601 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 607 602 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The age of a response is the time since it was sent by, or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 608 603 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> successfully validated with, the origin server.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 609 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>604 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 610 605 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> freshness lifetime</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 611 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>606 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 612 607 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The length of time between the generation of a response and its</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 613 608 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> expiration time.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 614 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>609 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 615 610 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> fresh</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 616 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>611 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 617 612 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A response is fresh if its age has not yet exceeded its freshness</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 618 613 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> lifetime.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 619 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>614 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 620 615 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> stale</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 621 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>616 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 622 617 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A response is stale if its age has passed its freshness lifetime.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 623 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>618 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 624 619 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> semantically transparent</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 625 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>620 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 626 621 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A cache behaves in a "semantically transparent" manner, with</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 627 622 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> respect to a particular response, when its use affects neither the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 631 626 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that it would have received had its request been handled directly</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 632 627 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> by the origin server.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 633 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>628 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 634 629 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> validator</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 635 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>630 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 636 631 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A protocol element (e.g., an entity tag or a Last-Modified time)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 637 632 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that is used to find out whether a cache entry is an equivalent</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 638 633 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> copy of an entity.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 639 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>634 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 640 635 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> upstream/downstream</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 641 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>636 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 642 637 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Upstream and downstream describe the flow of a message: all</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 643 638 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> messages flow from upstream to downstream.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 644 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>639 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 645 640 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> inbound/outbound</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 646 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>641 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 647 642 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Inbound and outbound refer to the request and response paths for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 648 643 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> messages: "inbound" means "traveling toward the origin server",</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 649 644 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and "outbound" means "traveling toward the user agent"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 650 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>645 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 651 646 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">1.4. Overall Operation</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 652 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>647 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 653 648 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The HTTP protocol is a request/response protocol. A client sends a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 654 649 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request to the server in the form of a request method, URI, and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 660 655 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> metainformation, and possible entity-body content. The relationship</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 661 656 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> between HTTP and MIME is described in Appendix A.4.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 662 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>657 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 663 658 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Most HTTP communication is initiated by a user agent and consists of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 664 659 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> a request to be applied to a resource on some origin server. In the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 665 660 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> simplest case, this may be accomplished via a single connection (v)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 666 661 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> between the user agent (UA) and the origin server (O).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 667 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>662 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 668 663 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request chain ------------------------></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 669 664 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> UA -------------------v------------------- O</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 670 665 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <----------------------- response chain</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 671 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>666 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 672 667 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A more complicated situation occurs when one or more intermediaries</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 673 668 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> are present in the request/response chain. There are three common</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 683 678 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> firewall) even when the intermediary cannot understand the contents</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 684 679 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of the messages.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 685 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>680 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 686 681 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request chain --------------------------------------></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 687 682 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> UA -----v----- A -----v----- B -----v----- C -----v----- O</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 688 683 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <------------------------------------- response chain</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 689 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>684 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 690 685 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The figure above shows three intermediaries (A, B, and C) between the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 691 686 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> user agent and origin server. A request or response message that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 699 694 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and/or forwarding requests to servers other than C, at the same time</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 700 695 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that it is handling A's request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 701 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>696 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 702 697 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Any party to the communication which is not acting as a tunnel may</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 703 698 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> employ an internal cache for handling requests. The effect of a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 707 702 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> cached copy of an earlier response from O (via C) for a request which</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 708 703 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> has not been cached by UA or A.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 709 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>704 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 710 705 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request chain ----------></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 711 706 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> UA -----v----- A -----v----- B - - - - - - C - - - - - - O</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 712 707 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <--------- response chain</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 713 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>708 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 714 709 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Not all responses are usefully cacheable, and some requests may</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 715 710 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> contain modifiers which place special requirements on cache behavior.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 716 711 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP requirements for cache behavior and cacheable responses are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 717 712 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> defined in Section 13.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 718 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>713 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 719 714 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In fact, there are a wide variety of architectures and configurations</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 720 715 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of caches and proxies currently being experimented with or deployed</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 730 725 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> reliability and, failing that, at least reliable indications of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 731 726 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> failure.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 732 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>727 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 733 728 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP communication usually takes place over TCP/IP connections. The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 734 729 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> default port is TCP 80 [RFC1700], but other ports can be used. This</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 739 734 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> onto the transport data units of the protocol in question is outside</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 740 735 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the scope of this specification.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 741 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>736 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 742 737 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In HTTP/1.0, most implementations used a new connection for each</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 743 738 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request/response exchange. In HTTP/1.1, a connection may be used for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 744 739 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> one or more request/response exchanges, although connections may be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 745 740 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> closed for a variety of reasons (see Section 8.1).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 746 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>741 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 747 742 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">2. Notational Conventions and Generic Grammar</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 748 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>743 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 749 744 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">2.1. Augmented BNF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 750 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>745 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 751 746 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All of the mechanisms specified in this document are described in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 752 747 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> both prose and an augmented Backus-Naur Form (BNF) similar to that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 754 749 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the notation in order to understand this specification. The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 755 750 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> augmented BNF includes the following constructs:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 756 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>751 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 757 752 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> name = definition</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 758 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>753 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 759 754 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The name of a rule is simply the name itself (without any</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 760 755 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> enclosing "<" and ">") and is separated from its definition by the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 765 760 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> brackets are used within definitions whenever their presence will</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 766 761 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> facilitate discerning the use of rule names.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 767 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>762 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 768 763 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "literal"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 769 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>764 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 770 765 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Quotation marks surround literal text. Unless stated otherwise,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 771 766 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the text is case-insensitive.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 772 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>767 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 773 768 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> rule1 | rule2</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 774 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>769 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 775 770 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Elements separated by a bar ("|") are alternatives, e.g., "yes |</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 776 771 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> no" will accept yes or no.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 777 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>772 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 778 773 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (rule1 rule2)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 779 774 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Elements enclosed in parentheses are treated as a single element.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 780 775 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Thus, "(elem (foo | bar) elem)" allows the token sequences "elem</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 781 776 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> foo elem" and "elem bar elem".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 782 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>777 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 783 778 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> *rule</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 784 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>779 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 785 780 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The character "*" preceding an element indicates repetition. The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 786 781 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> full form is "<n>*<m>element" indicating at least <n> and at most</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 788 783 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that "*(element)" allows any number, including zero; "1*element"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 789 784 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requires at least one; and "1*2element" allows one or two.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 790 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>785 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 791 786 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [rule]</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 792 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>787 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 793 788 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Square brackets enclose optional elements; "[foo bar]" is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 794 789 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> equivalent to "*1(foo bar)".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 795 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>790 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 796 791 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> N rule</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 797 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>792 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 798 793 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Specific repetition: "<n>(element)" is equivalent to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 799 794 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "<n>*<n>(element)"; that is, exactly <n> occurrences of (element).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 800 795 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Thus 2DIGIT is a 2-digit number, and 3ALPHA is a string of three</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 801 796 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> alphabetic characters.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 802 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>797 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 803 798 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> #rule</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 804 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>799 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 805 800 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A construct "#" is defined, similar to "*", for defining lists of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 806 801 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> elements. The full form is "<n>#<m>element" indicating at least</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 808 803 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (",") and OPTIONAL linear white space (LWS). This makes the usual</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 809 804 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> form of lists very easy; a rule such as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 810 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>805 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 811 806 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> ( *LWS element *( *LWS "," *LWS element ))</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 812 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>807 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 813 808 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> can be shown as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 814 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>809 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 815 810 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 1#element</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 816 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>811 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 817 812 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Wherever this construct is used, null elements are allowed, but do</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 818 813 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> not contribute to the count of elements present. That is,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 823 818 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "1#element" requires at least one; and "1#2element" allows one or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 824 819 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> two.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 825 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>820 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 826 821 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> ; comment</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 827 822 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A semi-colon, set off some distance to the right of rule text,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 829 824 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> simple way of including useful notes in parallel with the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 830 825 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> specifications.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 831 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>826 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 832 827 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> implied *LWS</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 833 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>828 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 834 829 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The grammar described by this specification is word-based. Except</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 835 830 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> where noted otherwise, linear white space (LWS) can be included</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 840 835 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of "token" below), since they would otherwise be interpreted as a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 841 836 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> single token.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 842 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>837 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 843 838 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">2.2. Basic Rules</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 844 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>839 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 845 840 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The following rules are used throughout this specification to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 846 841 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> describe basic parsing constructs. The US-ASCII coded character set</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 847 842 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> is defined by ANSI X3.4-1986 [USASCII].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 848 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>843 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 849 844 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> OCTET = <any 8-bit sequence of data></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 850 845 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> CHAR = <any US-ASCII character (octets 0 - 127)></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 860 855 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HT = <US-ASCII HT, horizontal-tab (9)></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 861 856 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <"> = <US-ASCII double-quote mark (34)></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 862 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>857 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 863 858 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP/1.1 defines the sequence CR LF as the end-of-line marker for all</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 864 859 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> protocol elements except the entity-body (see Appendix A.3 for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 865 860 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> tolerant applications). The end-of-line marker within an entity-body</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 866 861 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> is defined by its associated media type, as described in Section 3.7.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 867 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>862 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 868 863 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> CRLF = CR LF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 869 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>864 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 870 865 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP/1.1 header field values can be folded onto multiple lines if the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 871 866 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> continuation line begins with a space or horizontal tab. All linear</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 873 868 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> recipient MAY replace any linear white space with a single SP before</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 874 869 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> interpreting the field value or forwarding the message downstream.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 875 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>870 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 876 871 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> LWS = [CRLF] 1*( SP | HT )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 877 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>872 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 878 873 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The TEXT rule is only used for descriptive field contents and values</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 879 874 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that are not intended to be interpreted by the message parser. Words</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 881 876 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 8859-1 [ISO-8859] only when encoded according to the rules of RFC</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 882 877 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 2047 [RFC2047].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 883 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>878 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 884 879 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> TEXT = <any OCTET except CTLs,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 885 880 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> but including LWS></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 886 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>881 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 887 882 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A CRLF is allowed in the definition of TEXT only as part of a header</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 888 883 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> field continuation. It is expected that the folding LWS will be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 889 884 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> replaced with a single SP before interpretation of the TEXT value.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 890 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>885 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 891 886 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Hexadecimal numeric characters are used in several protocol elements.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 892 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>887 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 893 888 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HEX = "A" | "B" | "C" | "D" | "E" | "F"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 894 889 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "a" | "b" | "c" | "d" | "e" | "f" | DIGIT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 895 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>890 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 896 891 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Many HTTP/1.1 header field values consist of words separated by LWS</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 897 892 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> or special characters. These special characters MUST be in a quoted</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 898 893 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> string to be used within a parameter value (as defined in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 899 894 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Section 3.6).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 900 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>895 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 901 896 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> token = 1*<any CHAR except CTLs or separators></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 902 897 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> separators = "(" | ")" | "<" | ">" | "@"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 904 899 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "/" | "[" | "]" | "?" | "="</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 905 900 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "{" | "}" | SP | HT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 906 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>901 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 907 902 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Comments can be included in some HTTP header fields by surrounding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 908 903 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the comment text with parentheses. Comments are only allowed in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 910 905 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In all other fields, parentheses are considered part of the field</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 911 906 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> value.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 912 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>907 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 913 908 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> comment = "(" *( ctext | quoted-pair | comment ) ")"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 914 909 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> ctext = <any TEXT excluding "(" and ")"></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 915 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>910 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 916 911 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A string of text is parsed as a single word if it is quoted using</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 917 912 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> double-quote marks.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 918 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>913 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 919 914 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> quoted-string = ( <"> *(qdtext | quoted-pair ) <"> )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 920 915 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> qdtext = <any TEXT except <">></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 921 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>916 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 922 917 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The backslash character ("\") MAY be used as a single-character</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 923 918 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> quoting mechanism only within quoted-string and comment constructs.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 924 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>919 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 925 920 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> quoted-pair = "\" CHAR</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 926 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>921 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 927 922 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3. Protocol Parameters</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 928 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>923 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 929 924 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.1. HTTP Version</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 930 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>925 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 931 926 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP uses a "<major>.<minor>" numbering scheme to indicate versions</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 932 927 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of the protocol. The protocol versioning policy is intended to allow</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 942 937 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> incremented when the format of a message within the protocol is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 943 938 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> changed. See RFC 2145 [RFC2145] for a fuller explanation.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 944 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>939 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 945 940 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The version of an HTTP message is indicated by an HTTP-Version field</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 946 941 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in the first line of the message.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 947 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>942 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 948 943 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP-Version = "HTTP" "/" 1*DIGIT "." 1*DIGIT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 949 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>944 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 950 945 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note that the major and minor numbers MUST be treated as separate</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 951 946 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> integers and that each MAY be incremented higher than a single digit.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 953 948 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> lower than HTTP/12.3. Leading zeros MUST be ignored by recipients</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 954 949 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and MUST NOT be sent.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 955 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>950 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 956 951 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An application that sends a request or response message that includes</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 957 952 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP-Version of "HTTP/1.1" MUST be at least conditionally compliant</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 961 956 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message that is not compatible with HTTP/1.0. For more details on</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 962 957 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> when to send specific HTTP-Version values, see RFC 2145 [RFC2145].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 963 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>958 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 964 959 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The HTTP version of an application is the highest HTTP version for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 965 960 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> which the application is at least conditionally compliant.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 966 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>961 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 967 962 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Proxy and gateway applications need to be careful when forwarding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 968 963 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> messages in protocol versions different from that of the application.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 973 968 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the request version, or respond with an error, or switch to tunnel</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 974 969 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> behavior.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 975 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>970 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 976 971 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Due to interoperability problems with HTTP/1.0 proxies discovered</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 977 972 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> since the publication of RFC 2068 [RFC2068], caching proxies MUST,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 979 974 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> version they support. The proxy/gateway's response to that request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 980 975 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> MUST be in the same major version as the request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 981 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>976 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 982 977 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: Converting between versions of HTTP may involve modification</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 983 978 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of header fields required or forbidden by the versions involved.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 984 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>979 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 985 980 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.2. Uniform Resource Identifiers</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 986 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>981 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 987 982 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> URIs have been known by many names: WWW addresses, Universal Document</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 988 983 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Identifiers, Universal Resource Identifiers [RFC1630], and finally</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 991 986 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Identifiers are simply formatted strings which identify--via name,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 992 987 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> location, or any other characteristic--a resource.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 993 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>988 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 994 989 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.2.1. General Syntax</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 995 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>990 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 996 991 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> URIs in HTTP can be represented in absolute form or relative to some</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 997 992 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> known base URI [RFC1808], depending upon the context of their use.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1004 999 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "absoluteURI", "relativeURI", "port", "host","abs_path", "rel_path",</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1005 1000 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and "authority" from that specification.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1006 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1001 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1007 1002 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The HTTP protocol does not place any a priori limit on the length of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1008 1003 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> a URI. Servers MUST be able to handle the URI of any resource they</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1011 1006 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> SHOULD return 414 (Request-URI Too Long) status if a URI is longer</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1012 1007 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> than the server can handle (see Section 10.4.15).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1013 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1008 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1014 1009 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: Servers ought to be cautious about depending on URI lengths</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1015 1010 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> above 255 bytes, because some older client or proxy</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1016 1011 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> implementations might not properly support these lengths.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1017 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1012 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1018 1013 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.2.2. http URL</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1019 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1014 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1020 1015 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The "http" scheme is used to locate network resources via the HTTP</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1021 1016 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> protocol. This section defines the scheme-specific syntax and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1022 1017 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> semantics for http URLs.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1023 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1018 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1024 1019 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> http_URL = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]]</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1025 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1020 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1026 1021 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> If the port is empty or not given, port 80 is assumed. The semantics</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1027 1022 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> are that the identified resource is located at the server listening</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1035 1030 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> it received. If a proxy receives a fully qualified domain name, the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1036 1031 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> proxy MUST NOT change the host name.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1037 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1032 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1038 1033 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.2.3. URI Comparison</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1039 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1034 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1040 1035 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> When comparing two URIs to decide if they match or not, a client</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1041 1036 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> SHOULD use a case-sensitive octet-by-octet comparison of the entire</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1042 1037 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> URIs, with these exceptions:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1043 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1038 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1044 1039 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o A port that is empty or not given is equivalent to the default</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1045 1040 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> port for that URI-reference;</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1046 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1041 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1047 1042 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o Comparisons of host names MUST be case-insensitive;</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1048 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1043 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1049 1044 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o Comparisons of scheme names MUST be case-insensitive;</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1050 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1045 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1051 1046 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o An empty abs_path is equivalent to an abs_path of "/".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1052 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1047 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1053 1048 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Characters other than those in the "reserved" and "unsafe" sets (see</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1054 1049 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> RFC 2396 [RFC2396]) are equivalent to their ""%" HEX HEX" encoding.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1055 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1050 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1056 1051 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> For example, the following three URIs are equivalent:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1057 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1052 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1058 1053 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> http://abc.com:80/~smith/home.html</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1059 1054 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> http://ABC.com/%7Esmith/home.html</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1060 1055 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> http://ABC.com:/%7esmith/home.html</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1061 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1056 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1062 1057 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.3. Date/Time Formats</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1063 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1058 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1064 1059 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.3.1. Full Date</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1065 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1060 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1066 1061 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP applications have historically allowed three different formats</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1067 1062 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> for the representation of date/time stamps:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1068 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1063 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1069 1064 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Sun, 06 Nov 1994 08:49:37 GMT ; RFC 822, updated by RFC 1123</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1070 1065 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1071 1066 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1072 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1067 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1073 1068 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The first format is preferred as an Internet standard and represents</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1074 1069 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> a fixed-length subset of that defined by RFC 1123 [RFC1123] (an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1080 1075 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> representing HTTP-date values in header fields. See Appendix A.3 for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1081 1076 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> further information.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1082 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1077 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1083 1078 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: Recipients of date values are encouraged to be robust in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1084 1079 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> accepting date values that may have been sent by non-HTTP</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1085 1080 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> applications, as is sometimes the case when retrieving or posting</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1086 1081 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> messages via proxies/gateways to SMTP or NNTP.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1087 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1082 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1088 1083 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All HTTP date/time stamps MUST be represented in Greenwich Mean Time</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1089 1084 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (GMT), without exception. For the purposes of HTTP, GMT is exactly</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1094 1089 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> additional LWS beyond that specifically included as SP in the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1095 1090 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> grammar.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1096 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1091 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1097 1092 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP-date = rfc1123-date | rfc850-date | asctime-date</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1098 1093 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> rfc1123-date = wkday "," SP date1 SP time SP "GMT"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1114 1109 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "May" | "Jun" | "Jul" | "Aug"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1115 1110 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "Sep" | "Oct" | "Nov" | "Dec"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1116 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1111 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1117 1112 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: HTTP requirements for the date/time stamp format apply only to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1118 1113 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> their usage within the protocol stream. Clients and servers are not</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1119 1114 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> required to use these formats for user presentation, request logging,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1120 1115 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> etc.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1121 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1116 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1122 1117 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.3.2. Delta Seconds</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1123 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1118 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1124 1119 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Some HTTP header fields allow a time value to be specified as an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1125 1120 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> integer number of seconds, represented in decimal, after the time</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1126 1121 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> that the message was received.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1127 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1122 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1128 1123 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> delta-seconds = 1*DIGIT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1129 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1124 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1130 1125 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.4. Character Sets</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1131 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1126 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1132 1127 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP uses the same definition of the term "character set" as that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1133 1128 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> described for MIME:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1134 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1129 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1135 1130 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The term "character set" is used in this document to refer to a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1136 1131 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> method used with one or more tables to convert a sequence of octets</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1146 1141 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to characters. In particular, use of external profiling information</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1147 1142 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to determine the exact mapping is not permitted.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1148 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1143 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1149 1144 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: This use of the term "character set" is more commonly</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1150 1145 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> referred to as a "character encoding." However, since HTTP and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1151 1146 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> MIME share the same registry, it is important that the terminology</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1152 1147 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> also be shared.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1153 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1148 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1154 1149 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP character sets are identified by case-insensitive tokens. The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1155 1150 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> complete set of tokens is defined by the IANA Character Set registry</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1156 1151 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [RFC1700].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1157 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1152 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1158 1153 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> charset = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1159 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1154 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1160 1155 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Although HTTP allows an arbitrary token to be used as a charset</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1161 1156 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> value, any token that has a predefined value within the IANA</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1163 1158 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> defined by that registry. Applications SHOULD limit their use of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1164 1159 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> character sets to those defined by the IANA registry.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1165 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1160 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1166 1161 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Implementors should be aware of IETF character set requirements</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1167 1162 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [RFC2279] [RFC2277].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1168 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1163 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1169 1164 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.4.1. Missing Charset</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1170 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1165 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1171 1166 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Some HTTP/1.0 software has interpreted a Content-Type header without</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1172 1167 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> charset parameter incorrectly to mean "recipient should guess."</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1174 1169 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> parameter even when the charset is ISO-8859-1 and SHOULD do so when</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1175 1170 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> it is known that it will not confuse the recipient.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1176 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1171 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1177 1172 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Unfortunately, some older HTTP/1.0 clients did not deal properly with</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1178 1173 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> an explicit charset parameter. HTTP/1.1 recipients MUST respect the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1182 1177 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> recipient's preference, when initially displaying a document. See</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1183 1178 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Section 3.7.1.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1184 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1179 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1185 1180 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.5. Content Codings</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1186 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1181 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1187 1182 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Content coding values indicate an encoding transformation that has</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1188 1183 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> been or can be applied to an entity. Content codings are primarily</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1191 1186 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and without loss of information. Frequently, the entity is stored in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1192 1187 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> coded form, transmitted directly, and only decoded by the recipient.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1193 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1188 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1194 1189 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> content-coding = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1195 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1190 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1196 1191 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All content-coding values are case-insensitive. HTTP/1.1 uses</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1197 1192 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> content-coding values in the Accept-Encoding (Section 14.3) and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1200 1195 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> indicates what decoding mechanism will be required to remove the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1201 1196 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> encoding.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1202 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1197 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1203 1198 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Internet Assigned Numbers Authority (IANA) acts as a registry for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1204 1199 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> content-coding value tokens. Initially, the registry contains the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1205 1200 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> following tokens:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1206 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1201 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1207 1202 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> gzip</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1208 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1203 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1209 1204 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An encoding format produced by the file compression program "gzip"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1210 1205 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (GNU zip) as described in RFC 1952 [RFC1952]. This format is a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1211 1206 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Lempel-Ziv coding (LZ77) with a 32 bit CRC.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1212 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1207 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1213 1208 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> compress</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1214 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1209 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1215 1210 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The encoding format produced by the common UNIX file compression</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1216 1211 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> program "compress". This format is an adaptive Lempel-Ziv-Welch</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1217 1212 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> coding (LZW).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1218 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1213 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1219 1214 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Use of program names for the identification of encoding formats is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1220 1215 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> not desirable and is discouraged for future encodings. Their use</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1223 1218 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> applications SHOULD consider "x-gzip" and "x-compress" to be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1224 1219 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> equivalent to "gzip" and "compress" respectively.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1225 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1220 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1226 1221 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> deflate</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1227 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1222 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1228 1223 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The "zlib" format defined in RFC 1950 [RFC1950] in combination</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1229 1224 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> with the "deflate" compression mechanism described in RFC 1951</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1230 1225 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [RFC1951].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1231 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1226 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1232 1227 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> identity</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1233 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1228 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1234 1229 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The default (identity) encoding; the use of no transformation</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1235 1230 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> whatsoever. This content-coding is used only in the Accept-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1236 1231 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Encoding header, and SHOULD NOT be used in the Content-Encoding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1237 1232 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> header.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1238 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1233 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1239 1234 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> New content-coding value tokens SHOULD be registered; to allow</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1240 1235 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> interoperability between clients and servers, specifications of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1242 1237 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> publicly available and adequate for independent implementation, and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1243 1238 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> conform to the purpose of content coding defined in this section.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1244 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1239 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1245 1240 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.6. Transfer Codings</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1246 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1241 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1247 1242 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Transfer-coding values are used to indicate an encoding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1248 1243 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transformation that has been, can be, or may need to be applied to an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1250 1245 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This differs from a content coding in that the transfer-coding is a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1251 1246 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> property of the message, not of the original entity.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1252 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1247 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1253 1248 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-coding = "chunked" | transfer-extension</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1254 1249 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-extension = token *( ";" parameter )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1255 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1250 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1256 1251 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Parameters are in the form of attribute/value pairs.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1257 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1252 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1258 1253 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> parameter = attribute "=" value</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1259 1254 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> attribute = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1260 1255 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> value = token | quoted-string</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1261 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1256 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1262 1257 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All transfer-coding values are case-insensitive. HTTP/1.1 uses</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1263 1258 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-coding values in the TE header field (Section 14.39) and in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1264 1259 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the Transfer-Encoding header field (Section 14.41).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1265 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1260 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1266 1261 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Whenever a transfer-coding is applied to a message-body, the set of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1267 1262 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-codings MUST include "chunked", unless the message is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1271 1266 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> than once to a message-body. These rules allow the recipient to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1272 1267 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> determine the transfer-length of the message (Section 4.4).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1273 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1268 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1274 1269 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Transfer-codings are analogous to the Content-Transfer-Encoding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1275 1270 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> values of MIME [RFC2045], which were designed to enable safe</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1280 1275 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (Section 7.2.2), or the desire to encrypt data over a shared</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1281 1276 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transport.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1282 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1277 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1283 1278 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Internet Assigned Numbers Authority (IANA) acts as a registry for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1284 1279 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-coding value tokens. Initially, the registry contains the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1286 1281 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 3.6.2), "gzip" (Section 3.5), "compress" (Section 3.5), and "deflate"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1287 1282 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (Section 3.5).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1288 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1283 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1289 1284 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> New transfer-coding value tokens SHOULD be registered in the same way</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1290 1285 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> as new content-coding value tokens (Section 3.5).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1291 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1286 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1292 1287 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A server which receives an entity-body with a transfer-coding it does</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1293 1288 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> not understand SHOULD return 501 (Unimplemented), and close the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1294 1289 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> connection. A server MUST NOT send transfer-codings to an HTTP/1.0</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1295 1290 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> client.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1296 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1291 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1297 1292 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.6.1. Chunked Transfer Coding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1298 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1293 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1299 1294 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The chunked encoding modifies the body of a message in order to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1300 1295 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer it as a series of chunks, each with its own size indicator,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1303 1298 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the information necessary for the recipient to verify that it has</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1304 1299 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> received the full message.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1305 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1300 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1306 1301 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Chunked-Body = *chunk</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1307 1302 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> last-chunk</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1308 1303 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> trailer</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1309 1304 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1310 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1305 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1311 1306 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk = chunk-size [ chunk-extension ] CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1312 1307 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk-data CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1313 1308 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk-size = 1*HEX</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1314 1309 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> last-chunk = 1*("0") [ chunk-extension ] CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1315 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1310 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1316 1311 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk-extension= *( ";" chunk-ext-name [ "=" chunk-ext-val ] )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1317 1312 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk-ext-name = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1319 1314 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> chunk-data = chunk-size(OCTET)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1320 1315 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> trailer = *(entity-header CRLF)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1321 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1316 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1322 1317 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The chunk-size field is a string of hex digits indicating the size of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1323 1318 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the chunk. The chunked encoding is ended by any chunk whose size is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1324 1319 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> zero, followed by the trailer, which is terminated by an empty line.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1325 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1320 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1326 1321 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The trailer allows the sender to include additional HTTP header</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1327 1322 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> fields at the end of the message. The Trailer header field can be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1328 1323 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> used to indicate which header fields are included in a trailer (see</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1329 1324 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Section 14.40).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1330 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1325 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1331 1326 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A server using chunked transfer-coding in a response MUST NOT use the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1332 1327 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> trailer for any header fields unless at least one of the following is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1333 1328 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> true:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1334 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1329 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1335 1330 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 1. the request included a TE header field that indicates "trailers"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1336 1331 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> is acceptable in the transfer-coding of the response, as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1343 1338 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> trailer fields might be silently discarded along the path to the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1344 1339 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> client.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1345 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1340 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1346 1341 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This requirement prevents an interoperability failure when the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1347 1342 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message is being received by an HTTP/1.1 (or later) proxy and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1349 1344 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> compliance with the protocol would have necessitated a possibly</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1350 1345 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> infinite buffer on the proxy.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1351 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1346 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1352 1347 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An example process for decoding a Chunked-Body is presented in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1353 1348 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix A.4.6.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1354 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1349 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1355 1350 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All HTTP/1.1 applications MUST be able to receive and decode the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1356 1351 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "chunked" transfer-coding, and MUST ignore chunk-extension extensions</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1357 1352 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> they do not understand.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1358 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1353 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1359 1354 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.7. Media Types</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1360 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1355 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1361 1356 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP uses Internet Media Types [RFC1590] in the Content-Type</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1362 1357 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (Section 14.17) and Accept (Section 14.1) header fields in order to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1363 1358 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> provide open and extensible data typing and type negotiation.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1364 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1359 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1365 1360 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> media-type = type "/" subtype *( ";" parameter )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1366 1361 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> type = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1367 1362 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> subtype = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1368 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1363 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1369 1364 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Parameters MAY follow the type/subtype in the form of attribute/value</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1370 1365 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> pairs (as defined in Section 3.6).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1371 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1366 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1372 1367 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The type, subtype, and parameter attribute names are case-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1373 1368 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> insensitive. Parameter values might or might not be case-sensitive,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1377 1372 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> might be significant to the processing of a media-type, depending on</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1378 1373 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> its definition within the media type registry.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1379 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1374 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1380 1375 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note that some older HTTP applications do not recognize media type</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1381 1376 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> parameters. When sending data to older HTTP applications,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1382 1377 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> implementations SHOULD only use media type parameters when they are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1383 1378 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> required by that type/subtype definition.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1384 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1379 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1385 1380 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Media-type values are registered with the Internet Assigned Number</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1386 1381 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Authority (IANA [RFC1700]). The media type registration process is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1387 1382 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> outlined in RFC 1590 [RFC1590]. Use of non-registered media types is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1388 1383 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> discouraged.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1389 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1384 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1390 1385 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.7.1. Canonicalization and Text Defaults</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1391 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1386 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1392 1387 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Internet media types are registered with a canonical form. An</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1393 1388 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-body transferred via HTTP messages MUST be represented in the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1394 1389 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> appropriate canonical form prior to its transmission except for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1395 1390 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "text" types, as defined in the next paragraph.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1396 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1391 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1397 1392 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> When in canonical form, media subtypes of the "text" type use CRLF as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1398 1393 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the text line break. HTTP relaxes this requirement and allows the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1405 1400 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> some multi-byte character sets, HTTP allows the use of whatever octet</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1406 1401 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> sequences are defined by that character set to represent the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1407 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> equivalent of CR and LF for line breaks. </span> This <span class="delete">flexibility regarding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1402 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> equivalent of CR and LF for line breaks. This flexibility regarding</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1408 1403 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> line breaks applies only to text media in the entity-body; a bare CR</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1409 1404 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> or LF MUST NOT be substituted for CRLF within any of the HTTP control</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1410 1405 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> structures (such as header fields and multipart boundaries).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1411 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1406 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1412 1407 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> If an entity-body is encoded with a content-coding, the underlying</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1413 1408 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> data MUST be in a form defined above prior to being encoded.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1414 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1415 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The "charset" parameter is used with some media types to </span> define <span class="delete">the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1409 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1410 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The "charset" parameter is used with some media types to define the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1416 1411 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> character set (Section 3.4) of the data. When no explicit charset</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1417 1412 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> parameter is provided by the sender, media subtypes of the "text"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1420 1415 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> its subsets MUST be labeled with an appropriate charset value. See</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1421 1416 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Section 3.4.1 for compatibility problems.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1422 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1417 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1423 1418 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.7.2. Multipart Types</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1424 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1419 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1425 1420 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> MIME provides for a number of "multipart" types -- encapsulations of</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1426 1421 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> one or more entities within a single message-body. All multipart</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1427 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> types share a common syntax, as defined in section 5.1.1 </span> of <span class="delete">RFC 2046</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1422 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> types share a common syntax, as defined in section 5.1.1 of RFC 2046</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1428 1423 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [RFC2046], and MUST include a boundary parameter as part of the media</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1429 1424 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> type value. The message body is itself a protocol element and MUST</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1430 1425 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> therefore use only CRLF to represent line breaks between body-parts.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1431 1426 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Unlike in RFC 2046, the epilogue of any multipart message MUST be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1432 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> empty; </span> HTTP <span class="delete">applications MUST NOT transmit the epilogue (even if the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1427 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> empty; HTTP applications MUST NOT transmit the epilogue (even if the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1433 1428 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> original multipart contains an epilogue). These restrictions exist</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1434 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in order </span> to <span class="delete">preserve the self-delimiting nature of a multipart</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1429 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in order to preserve the self-delimiting nature of a multipart</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1435 1430 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message-body, wherein the "end" of the message-body is indicated by</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1436 1431 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the ending multipart boundary.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1437 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1432 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1438 1433 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In general, HTTP treats a multipart message-body no differently than</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1439 1434 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> any other media type: strictly as payload. The one exception is the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1440 1435 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "multipart/byteranges" type (Appendix A.2) when it appears in a 206</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1441 1436 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (Partial Content) response, which will be interpreted by some HTTP</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1442 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> caching mechanisms as described in sections 13.5.4 </span> and <span class="delete">14.16. In all</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1437 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> caching mechanisms as described in sections 13.5.4 and 14.16. In all</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1443 1438 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> other cases, an HTTP user agent SHOULD follow the same or similar</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1444 1439 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> behavior as a MIME user agent would upon receipt of a multipart type.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1446 1441 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> body do not have any significance to HTTP beyond that defined by</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1447 1442 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> their MIME semantics.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1448 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1449 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In general, an HTTP user agent SHOULD follow </span> the <span class="delete">same or similar</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1450 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> behavior as a MIME user agent would upon receipt of a multipart </span> type.</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1451 <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">If an application receives an unrecognized multipart subtype, the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1452 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> application MUST treat </span> it <span class="delete">as being equivalent to "multipart/mixed".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1453 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1443 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1444 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In general, an HTTP user agent SHOULD follow the same or similar</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1445 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> behavior as a MIME user agent would upon receipt of a multipart type.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1446 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> If an application receives an unrecognized multipart subtype, the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1447 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> application MUST treat it as being equivalent to "multipart/mixed".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1448 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1454 1449 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: The "multipart/form-data" type has been specifically defined</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1455 1450 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> for carrying form data suitable for processing via the POST</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1456 1451 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request method, as described in RFC 1867 [RFC1867].</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1457 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1452 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1458 1453 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.8. Product Tokens</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1459 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1454 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1460 1455 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Product tokens are used to allow communicating applications to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1461 1456 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> identify themselves by software name and version. Most fields using</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1464 1459 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> convention, the products are listed in order of their significance</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1465 1460 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> for identifying the application.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1466 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1461 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1467 1462 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> product = token ["/" product-version]</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1468 1463 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> product-version = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1469 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1464 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1470 1465 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Examples:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1471 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1466 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1472 1467 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1473 1468 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Server: Apache/0.8.4</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1474 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1469 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1475 1470 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Product tokens SHOULD be short and to the point. They MUST NOT be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1476 1471 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> used for advertising or other non-essential information. Although</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1477 1472 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> any token character MAY appear in a product-version, this token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1478 1473 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> SHOULD only be used for a version identifier (i.e., successive</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1479 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> versions of the same product SHOULD </span> only <span class="delete">differ in the product-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1474 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> versions of the same product SHOULD only differ in the product-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1480 1475 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> version portion of the product value).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1481 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1476 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1482 1477 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.9. Quality Values</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1483 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1478 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1484 1479 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP content negotiation (Section 12) uses short "floating point"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1485 1480 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> numbers to indicate the relative importance ("weight") of various</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1491 1486 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> decimal point. User configuration of these values SHOULD also be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1492 1487 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> limited in this fashion.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1493 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1488 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1494 1489 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> qvalue = ( "0" [ "." 0*3DIGIT ] )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1495 1490 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | ( "1" [ "." 0*3("0") ] )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1496 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1491 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1497 1492 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "Quality values" is a misnomer, since these values merely represent</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1498 1493 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> relative degradation in desired quality.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1499 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1494 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1500 1495 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.10. Language Tags</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1501 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1496 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1502 1497 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A language tag identifies a natural language spoken, written, or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1503 1498 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> otherwise conveyed by human beings for communication of information</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1504 1499 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to other human beings. Computer languages are explicitly excluded.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1505 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP uses language tags within </span> the <span class="delete">Accept-Language and Content-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1500 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP uses language tags within the Accept-Language and Content-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1506 1501 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Language fields.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1507 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1508 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The syntax and registry </span> of <span class="delete">HTTP language tags is the same as that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1509 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> defined by </span> RFC <span class="delete">1766 [RFC1766]. In summary, a language tag is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1502 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1503 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The syntax and registry of HTTP language tags is the same as that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1504 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> defined by RFC 1766 [RFC1766]. In summary, a language tag is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1510 1505 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> composed of 1 or more parts: A primary language tag and a possibly</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1511 1506 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> empty series of subtags:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1512 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1507 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1513 1508 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> language-tag = primary-tag *( "-" subtag )</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1514 1509 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> primary-tag = 1*8ALPHA</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1515 1510 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> subtag = 1*8ALPHA</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1516 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1511 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1517 1512 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> White space is not allowed within the tag and all tags are case-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1518 1513 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> insensitive. The name space of language tags is administered by the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1519 1514 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> IANA. Example tags include:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1520 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1515 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1521 1516 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> en, en-US, en-cockney, i-cherokee, x-pig-latin</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1522 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1517 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1523 1518 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> where any two-letter primary-tag is an ISO-639 language abbreviation</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1524 1519 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and any two-letter initial subtag is an ISO-3166 country code. (The</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1525 1520 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> last three tags above are not registered tags; all but the last are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1526 1521 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> examples of tags which could be registered in future.)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1527 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1522 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1528 1523 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">3.11. Entity Tags</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1529 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1524 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1530 1525 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Entity tags are used for comparing two or more entities from the same</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1531 1526 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requested resource. HTTP/1.1 uses entity tags in the ETag</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1535 1530 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in Section 13.3.3. An entity tag consists of an opaque quoted</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1536 1531 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> string, possibly prefixed by a weakness indicator.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1537 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1532 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1538 1533 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-tag = [ weak ] opaque-tag</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1539 1534 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> weak = "W/"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1540 1535 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> opaque-tag = quoted-string</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1541 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1536 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1542 1537 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A "strong entity tag" MAY be shared by two entities of a resource</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1543 1538 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> only if they are equivalent by octet equality.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1544 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1539 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1545 1540 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A "weak entity tag," indicated by the "W/" prefix, MAY be shared by</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1546 1541 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> two entities of a resource only if the entities are equivalent and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1547 1542 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> could be substituted for each other with no significant change in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1548 1543 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> semantics. A weak entity tag can only be used for weak comparison.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1549 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1544 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1550 1545 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An entity tag MUST be unique across all versions of all entities</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1551 1546 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> associated with a particular resource. A given entity tag value MAY</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1576 1571 <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> 1577 1572 <tr><td><a name="diff0013" /></td></tr> 1578 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4. HTTP Message</span></td><td> </td><td class="rblock"> 3. Status Code Definitions</td><td class="lineno" valign="top"></td></tr>1579 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1573 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4. HTTP Message</span></td><td> </td><td class="rblock"><span class="insert">3. Status Code Definitions</span></td><td class="lineno" valign="top"></td></tr> 1574 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1580 1575 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4.1. Message Types</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1581 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1576 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1582 1577 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP messages consist of requests from client to server and responses</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1583 1578 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> from server to client.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1584 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1579 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1585 1580 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP-message = Request | Response ; HTTP/1.1 messages</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1586 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1581 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1587 1582 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request (Section 5) and Response (Section 6) messages use the generic</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1588 1583 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message format of RFC 822 [RFC822] for transferring entities (the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1591 1586 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> line (i.e., a line with nothing preceding the CRLF) indicating the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1592 1587 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> end of the header fields, and possibly a message-body.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1593 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1588 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1594 1589 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> generic-message = start-line</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1595 1590 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> *(message-header CRLF)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1597 1592 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [ message-body ]</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1598 1593 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> start-line = Request-Line | Status-Line</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1599 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1594 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1600 1595 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> In the interest of robustness, servers SHOULD ignore any empty</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1601 1596 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> line(s) received where a Request-Line is expected. In other words,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1602 1597 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> if the server is reading the protocol stream at the beginning of a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1603 1598 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message and receives a CRLF first, it should ignore the CRLF.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1604 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1599 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1605 1600 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Certain buggy HTTP/1.0 client implementations generate extra CRLF's</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1606 1601 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> after a POST request. To restate what is explicitly forbidden by the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1607 1602 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> BNF, an HTTP/1.1 client MUST NOT preface or follow a request with an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1608 1603 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> extra CRLF.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1609 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1604 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1610 1605 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4.2. Message Headers</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1611 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1606 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1612 1607 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP header fields, which include general-header (Section 4.5),</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1613 1608 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request-header (Section 5.3), response-header (Section 6.2), and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1622 1617 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> since there might exist some implementations that fail to accept</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1623 1618 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> anything beyond the common forms.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1624 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1619 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1625 1620 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message-header = field-name ":" [ field-value ]</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1626 1621 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> field-name = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1629 1624 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and consisting of either *TEXT or combinations</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1630 1625 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of token, separators, and quoted-string></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1631 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1626 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1632 1627 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The field-content does not include any leading or trailing LWS:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1633 1628 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> linear white space occurring before the first non-whitespace</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1638 1633 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> before interpreting the field value or forwarding the message</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1639 1634 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> downstream.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1640 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1635 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1641 1636 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The order in which header fields with differing field names are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1642 1637 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> received is not significant. However, it is "good practice" to send</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1643 1638 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> general-header fields first, followed by request-header or response-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1644 1639 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> header fields, and ending with the entity-header fields.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1645 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1640 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1646 1641 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Multiple message-header fields with the same field-name MAY be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1647 1642 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> present in a message if and only if the entire field-value for that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1654 1649 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> interpretation of the combined field value, and thus a proxy MUST NOT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1655 1650 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> change the order of these field values when a message is forwarded.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1656 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1651 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1657 1652 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4.3. Message Body</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1658 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1653 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1659 1654 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The message-body (if any) of an HTTP message is used to carry the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1660 1655 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-body associated with the request or response. The message-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1662 1657 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> been applied, as indicated by the Transfer-Encoding header field</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1663 1658 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (Section 14.41).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1664 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1659 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1665 1660 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message-body = entity-body</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1666 1661 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | <entity-body encoded as per Transfer-Encoding></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1667 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1662 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1668 1663 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Transfer-Encoding MUST be used to indicate any transfer-codings</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1669 1664 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> applied by an application to ensure safe and proper transfer of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1672 1667 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request/response chain. (However, Section 3.6 places restrictions on</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1673 1668 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> when certain transfer-codings may be used.)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1674 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1669 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1675 1670 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The rules for when a message-body is allowed in a message differ for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1676 1671 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requests and responses.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1677 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1672 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1678 1673 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The presence of a message-body in a request is signaled by the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1679 1674 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> inclusion of a Content-Length or Transfer-Encoding header field in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1684 1679 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request method does not include defined semantics for an entity-body,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1685 1680 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> then the message-body SHOULD be ignored when handling the request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1686 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1681 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1687 1682 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> For response messages, whether or not a message-body is included with</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1688 1683 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> a message is dependent on both the request method and the response</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1693 1688 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> MUST NOT include a message-body. All other responses do include a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1694 1689 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message-body, although it MAY be of zero length.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1695 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1690 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1696 1691 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4.4. Message Length</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1697 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1692 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1698 1693 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The transfer-length of a message is the length of the message-body as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1699 1694 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> it appears in the message; that is, after any transfer-codings have</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1701 1696 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-length of that body is determined by one of the following</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1702 1697 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (in order of precedence):</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1703 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1698 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1704 1699 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 1. Any response message which "MUST NOT" include a message-body</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1705 1700 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> (such as the 1xx, 204, and 304 responses and any response to a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1707 1702 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the header fields, regardless of the entity-header fields present</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1708 1703 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in the message.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1709 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1704 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1710 1705 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 2. If a Transfer-Encoding header field (Section 14.41) is present</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1711 1706 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and has any value other than "identity", then the transfer-length</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1712 1707 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> is defined by use of the "chunked" transfer-coding (Section 3.6),</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1713 1708 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> unless the message is terminated by closing the connection.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1714 <tr><td class="lineno" valign="top"></td><td class="lblock"> 1715 <tr><td class="lineno" valign="top"></td><td class="lblock"> 3. <span class="delete">If a Content-Length header field (Section 14.13) is present, its</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1709 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1710 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 3. If a Content-Length header field (Section 14.13) is present, its</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1716 1711 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> decimal value in OCTETs represents both the entity-length and the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1717 1712 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> transfer-length. The Content-Length header field MUST NOT be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1720 1715 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> both a Transfer-Encoding header field and a Content-Length header</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1721 1716 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> field, the latter MUST be ignored.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1722 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1717 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1723 1718 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 4. If the message uses the media type "multipart/byteranges", and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1724 1719 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the ransfer-length is not otherwise specified, then this self-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1728 1723 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> ultiple byte-range specifiers from a 1.1 client implies that the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1729 1724 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> lient can parse multipart/byteranges responses.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1730 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1725 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1731 1726 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A range header might be forwarded by a 1.0 proxy that does not</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1732 1727 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> understand multipart/byteranges; in this case the server MUST</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1733 1728 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> delimit the message using methods defined in items 1, 3 or 5</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1734 1729 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of this section.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1735 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1730 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1736 1731 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 5. By the server closing the connection. (Closing the connection</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1737 1732 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> cannot be used to indicate the end of a request body, since that</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1738 1733 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> would leave no possibility for the server to send back a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1739 1734 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> response.)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1740 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1735 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1741 1736 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> For compatibility with HTTP/1.0 applications, HTTP/1.1 requests</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1742 1737 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> containing a message-body MUST include a valid Content-Length header</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1746 1741 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> determine the length of the message, or with 411 (length required) if</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1747 1742 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> it wishes to insist on receiving a valid Content-Length.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1748 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1743 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1749 1744 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> All HTTP/1.1 applications that receive entities MUST accept the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1750 1745 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "chunked" transfer-coding (Section 3.6), thus allowing this mechanism</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1751 1746 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to be used for messages when the message length cannot be determined</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1752 1747 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> in advance.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1753 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1748 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1754 1749 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Messages MUST NOT include both a Content-Length header field and a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1755 1750 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> non-identity transfer-coding. If the message does include a non-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1756 1751 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> identity transfer-coding, the Content-Length MUST be ignored.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1757 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1752 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1758 1753 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> When a Content-Length is given in a message where a message-body is</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1759 1754 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> allowed, its field value MUST exactly match the number of OCTETs in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1760 1755 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the message-body. HTTP/1.1 user agents MUST notify the user when an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1761 1756 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> invalid length is received and detected.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1762 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1757 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1763 1758 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">4.5. General Header Fields</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1764 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1759 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1765 1760 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> There are a few header fields which have general applicability for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1766 1761 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> both request and response messages, but which do not apply to the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1767 1762 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity being transferred. These header fields apply only to the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1768 1763 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message being transmitted.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1769 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1764 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1770 1765 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> general-header = Cache-Control ; Section 14.9</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1771 1766 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | Connection ; Section 14.10</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1777 1772 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | Via ; Section 14.45</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1778 1773 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | Warning ; Section 14.46</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1779 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1774 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1780 1775 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> General-header field names can be extended reliably only in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1781 1776 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> combination with a change in the protocol version. However, new or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1784 1779 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> be general-header fields. Unrecognized header fields are treated as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1785 1780 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-header fields.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1786 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1781 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1787 1782 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5. Request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1788 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1783 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1789 1784 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A request message from a client to a server includes, within the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1790 1785 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> first line of that message, the method to be applied to the resource,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1791 1786 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the identifier of the resource, and the protocol version in use.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1792 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1787 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1793 1788 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request = Request-Line ; Section 5.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1794 1789 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> *(( general-header ; Section 4.5</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1797 1792 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1798 1793 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [ message-body ] ; Section 4.3</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1799 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1794 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1800 1795 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5.1. Request-Line</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1801 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1796 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1802 1797 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Request-Line begins with a method token, followed by the Request-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1803 1798 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> URI and the protocol version, and ending with CRLF. The elements are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1804 1799 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> separated by SP characters. No CR or LF is allowed except in the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1805 1800 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> final CRLF sequence.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1806 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1801 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1807 1802 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request-Line = Method SP Request-URI SP HTTP-Version CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1808 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1803 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1809 1804 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5.1.1. Method</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1810 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1805 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1811 1806 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Method token indicates the method to be performed on the resource</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1812 1807 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> identified by the Request-URI. The method is case-sensitive.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1813 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1808 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1814 1809 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Method = "OPTIONS" ; Section 9.2</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1815 1810 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "GET" ; Section 9.3</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1822 1817 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | extension-method</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1823 1818 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> extension-method = token</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1824 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1819 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1825 1820 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The list of methods allowed by a resource can be specified in an</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1826 1821 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Allow header field (Section 14.7). The return code of the response</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1835 1830 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> implemented, they MUST be implemented with the same semantics as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1836 1831 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> those specified in Section 9.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1837 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1832 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1838 1833 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5.1.2. Request-URI</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1839 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1834 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1840 1835 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Request-URI is a Uniform Resource Identifier (Section 3.2) and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1841 1836 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> identifies the resource upon which to apply the request.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1842 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1837 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1843 1838 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request-URI = "*" | absoluteURI | abs_path | authority</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1844 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1839 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1845 1840 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The four options for Request-URI are dependent on the nature of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1846 1841 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request. The asterisk "*" means that the request does not apply to a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1848 1843 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> when the method used does not necessarily apply to a resource. One</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1849 1844 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> example would be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1850 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1845 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1851 1846 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> OPTIONS * HTTP/1.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1852 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1847 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1853 1848 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The absoluteURI form is REQUIRED when the request is being made to a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1854 1849 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> proxy. The proxy is requested to forward the request or service it</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1859 1854 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> any aliases, local variations, and the numeric IP address. An</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1860 1855 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> example Request-Line would be:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1861 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1856 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1862 1857 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> GET http://www.w3.org/pub/WWW/TheProject.html HTTP/1.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1863 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1858 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1864 1859 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> To allow for transition to absoluteURIs in all requests in future</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1865 1860 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> versions of HTTP, all HTTP/1.1 servers MUST accept the absoluteURI</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1866 1861 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> form in requests, even though HTTP/1.1 clients will only generate</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1867 1862 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> them in requests to proxies.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1868 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1863 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1869 1864 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The authority form is only used by the CONNECT method (Section 9.9).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1870 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1865 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1871 1866 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The most common form of Request-URI is that used to identify a</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1872 1867 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> resource on an origin server or gateway. In this case the absolute</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1877 1872 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> create a TCP connection to port 80 of the host "www.w3.org" and send</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1878 1873 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the lines:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1879 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1874 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1880 1875 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> GET /pub/WWW/TheProject.html HTTP/1.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1881 1876 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Host: www.w3.org</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1882 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1877 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1883 1878 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> followed by the remainder of the Request. Note that the absolute</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1884 1879 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> path cannot be empty; if none is present in the original URI, it MUST</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1885 1880 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> be given as "/" (the server root).</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1886 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1881 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1887 1882 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Request-URI is transmitted in the format specified in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1888 1883 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Section 3.2.1. If the Request-URI is encoded using the "% HEX HEX"</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1890 1885 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> order to properly interpret the request. Servers SHOULD respond to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1891 1886 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> invalid Request-URIs with an appropriate status code.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1892 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1887 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1893 1888 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> A transparent proxy MUST NOT rewrite the "abs_path" part of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1894 1889 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> received Request-URI when forwarding it to the next inbound server,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1895 1890 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> except as noted above to replace a null abs_path with "/".</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1896 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1891 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1897 1892 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Note: The "no rewrite" rule prevents the proxy from changing the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1898 1893 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> meaning of the request when the origin server is improperly using</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1900 1895 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> should be aware that some pre-HTTP/1.1 proxies have been known to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1901 1896 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> rewrite the Request-URI.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1902 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1897 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1903 1898 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5.2. The Resource Identified by a Request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1904 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1899 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1905 1900 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The exact resource identified by an Internet request is determined by</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1906 1901 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> examining both the Request-URI and the Host header field.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1907 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1902 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1908 1903 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An origin server that does not allow resources to differ by the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1909 1904 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requested host MAY ignore the Host header field value when</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1910 1905 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> determining the resource identified by an HTTP/1.1 request. (But see</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1911 1906 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Appendix A.6.1.1 for other requirements on Host support in HTTP/1.1.)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1912 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1907 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1913 1908 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> An origin server that does differentiate resources based on the host</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1914 1909 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> requested (sometimes referred to as virtual hosts or vanity host</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1915 1910 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> names) MUST use the following rules for determining the requested</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1916 1911 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> resource on an HTTP/1.1 request:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1917 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1912 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1918 1913 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 1. If Request-URI is an absoluteURI, the host is part of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1919 1914 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request-URI. Any Host header field value in the request MUST be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1920 1915 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> ignored.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1921 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1916 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1922 1917 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 2. If the Request-URI is not an absoluteURI, and the request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1923 1918 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> includes a Host header field, the host is determined by the Host</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1924 1919 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> header field value.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1925 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1920 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1926 1921 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> 3. If the host as determined by rule 1 or 2 is not a valid host on</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1927 1922 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> the server, the response MUST be a 400 (Bad Request) error</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1928 1923 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> message.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1929 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1924 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1930 1925 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Recipients of an HTTP/1.0 request that lacks a Host header field MAY</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1931 1926 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> attempt to use heuristics (e.g., examination of the URI path for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1932 1927 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> something unique to a particular host) in order to determine what</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1933 1928 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> exact resource is being requested.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1934 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1929 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1935 1930 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">5.3. Request Header Fields</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1936 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1931 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1937 1932 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The request-header fields allow the client to pass additional</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1938 1933 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> information about the request, and about the client itself, to the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1940 1935 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> equivalent to the parameters on a programming language method</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1941 1936 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> invocation.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1942 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1937 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1943 1938 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> request-header = Accept ; Section 14.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1944 1939 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | Accept-Charset ; Section 14.2</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1960 1955 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | TE ; Section 14.39</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1961 1956 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | User-Agent ; Section 14.43</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1962 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1957 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1963 1958 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Request-header field names can be extended reliably only in</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1964 1959 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> combination with a change in the protocol version. However, new or</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1967 1962 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> be request-header fields. Unrecognized header fields are treated as</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1968 1963 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> entity-header fields.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1969 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1964 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1970 1965 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">6. Response</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1971 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1966 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1972 1967 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> After receiving and interpreting a request message, a server responds</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1973 1968 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> with an HTTP response message.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1974 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1969 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1975 1970 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Response = Status-Line ; Section 6.1</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1976 1971 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> *(( general-header ; Section 4.5</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1979 1974 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1980 1975 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> [ message-body ] ; Section 7.2</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1981 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1976 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1982 1977 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">6.1. Status-Line</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1983 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1978 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1984 1979 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The first line of a Response message is the Status-Line, consisting</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1985 1980 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> of the protocol version followed by a numeric status code and its</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1987 1982 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> characters. No CR or LF is allowed except in the final CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1988 1983 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> sequence.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1989 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1984 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1990 1985 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1991 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1986 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1992 1987 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">6.1.1. Status Code and Reason Phrase</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1993 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1988 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1994 1989 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The Status-Code element is a 3-digit integer result code of the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 1995 1990 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> attempt to understand and satisfy the request. These codes are fully</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 1999 1994 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> user. The client is not required to examine or display the Reason-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2000 1995 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Phrase.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2001 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>1996 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2002 1997 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The first digit of the Status-Code defines the class of response.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2003 1998 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The last two digits do not have any categorization role. There are 5</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2004 1999 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> values for the first digit:</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2005 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2000 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2006 2001 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o 1xx: Informational - Request received, continuing process</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2007 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2002 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2008 2003 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o 2xx: Success - The action was successfully received, understood,</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2009 2004 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> and accepted</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2010 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2005 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2011 2006 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o 3xx: Redirection - Further action must be taken in order to</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2012 2007 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> complete the request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2013 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2008 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2014 2009 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o 4xx: Client Error - The request contains bad syntax or cannot be</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2015 2010 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> fulfilled</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2016 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2011 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2017 2012 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> o 5xx: Server Error - The server failed to fulfill an apparently</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2018 2013 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> valid request</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2019 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2014 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2020 2015 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The individual values of the numeric status codes defined for</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2021 2016 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP/1.1, and an example set of corresponding Reason-Phrase's, are</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 2023 2018 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> recommendations -- they MAY be replaced by local equivalents without</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2024 2019 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> affecting the protocol.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2025 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2020 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2026 2021 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Status-Code =</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2027 2022 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "100" ; Section 10.1.1: Continue</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 2066 2061 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | "505" ; Section 10.5.6: HTTP Version not supported</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2067 2062 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> | extension-code</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2068 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2063 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2069 2064 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> extension-code = 3DIGIT</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2070 2065 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Reason-Phrase = *<TEXT, excluding CR, LF></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2071 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2066 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2072 2067 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> HTTP status codes are extensible. HTTP applications are not required</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2073 2068 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> to understand the meaning of all registered status codes, though such</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> … … 2083 2078 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> with the response, since that entity is likely to include human-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2084 2079 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> readable information which will explain the unusual status.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2085 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2080 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2086 2081 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">6.2. Response Header Fields</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2087 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2082 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2088 2083 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The response-header fields allow the server to pass additional</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2089 2084 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> information about the response which cannot be placed in the Status-</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2090 2085 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Line. These header fields give information about the server and</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2091 2086 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> about further access to the resource identified by the Request-URI.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2092 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>2087 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> </span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> 2093 2088 <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> response-header = Accept-Ranges &