Ignore:
Timestamp:
Nov 12, 2008, 3:36:52 PM (11 years ago)
Author:
julian.reschke@…
Message:

Rewrite header ABNFs to spell out whitespace rules, factor out value format definitions. (related to #36)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p1-messaging.html

    r353 r354  
    15641564      <div id="rfc.iref.h.3"></div>
    15651565      <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a>&nbsp;<a id="header.connection" href="#header.connection">Connection</a></h2>
    1566       <p id="rfc.section.8.1.p.1">The Connection general-header field allows the sender to specify options that are desired for that particular connection and <em class="bcp14">MUST NOT</em> be communicated by proxies over further connections.
    1567       </p>
    1568       <p id="rfc.section.8.1.p.2">The Connection header has the following grammar:</p>
    1569       <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span>  <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" 1#(<a href="#header.connection" class="smpl">connection-token</a>)
    1570   <a href="#header.connection" class="smpl">connection-token</a>  = <a href="#rule.token.separators" class="smpl">token</a>
     1566      <p id="rfc.section.8.1.p.1">The general-header field "Connection" allows the sender to specify options that are desired for that particular connection
     1567         and <em class="bcp14">MUST NOT</em> be communicated by proxies over further connections.
     1568      </p>
     1569      <p id="rfc.section.8.1.p.2">The Connection header's value has the following grammar:</p>
     1570      <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span><span id="rfc.iref.g.74"></span>  <a href="#header.connection" class="smpl">Connection</a>       = "Connection" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a>
     1571  <a href="#header.connection" class="smpl">Connection-v</a>     = 1#<a href="#header.connection" class="smpl">connection-token</a>
     1572  <a href="#header.connection" class="smpl">connection-token</a> = <a href="#rule.token.separators" class="smpl">token</a>
    15711573</pre><p id="rfc.section.8.1.p.4">HTTP/1.1 proxies <em class="bcp14">MUST</em> parse the Connection header field before a message is forwarded and, for each connection-token in this field, remove any header
    15721574         field(s) from the message with the same name as the connection-token. Connection options are signaled by the presence of a
     
    15791581         of the response. For example,
    15801582      </p>
    1581       <div id="rfc.figure.u.44"></div><pre class="text">    Connection: close
     1583      <div id="rfc.figure.u.44"></div><pre class="text">  Connection: close
    15821584</pre><p id="rfc.section.8.1.p.8">in either the request or the response header fields indicates that the connection <em class="bcp14">SHOULD NOT</em> be considered `persistent' (<a href="#persistent.connections" title="Persistent Connections">Section&nbsp;7.1</a>) after the current request/response is complete.
    15831585      </p>
     
    15921594      <div id="rfc.iref.h.4"></div>
    15931595      <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a>&nbsp;<a id="header.content-length" href="#header.content-length">Content-Length</a></h2>
    1594       <p id="rfc.section.8.2.p.1">The Content-Length entity-header field indicates the size of the entity-body, in decimal number of OCTETs, sent to the recipient
     1596      <p id="rfc.section.8.2.p.1">The entity-header field "Content-Length" indicates the size of the entity-body, in decimal number of OCTETs, sent to the recipient
    15951597         or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET.
    15961598      </p>
    1597       <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.74"></span>  <a href="#header.content-length" class="smpl">Content-Length</a>    = "Content-Length" ":" 1*<a href="#core.rules" class="smpl">DIGIT</a>
     1599      <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.75"></span><span id="rfc.iref.g.76"></span>  <a href="#header.content-length" class="smpl">Content-Length</a>   = "Content-Length" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a>
     1600  <a href="#header.content-length" class="smpl">Content-Length-v</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a>
    15981601</pre><p id="rfc.section.8.2.p.3">An example is</p>
    1599       <div id="rfc.figure.u.46"></div><pre class="text">    Content-Length: 3495
     1602      <div id="rfc.figure.u.46"></div><pre class="text">  Content-Length: 3495
    16001603</pre><p id="rfc.section.8.2.p.5">Applications <em class="bcp14">SHOULD</em> use this field to indicate the transfer-length of the message-body, unless this is prohibited by the rules in <a href="#message.length" title="Message Length">Section&nbsp;4.4</a>.
    16011604      </p>
     
    16091612      <div id="rfc.iref.h.5"></div>
    16101613      <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a>&nbsp;<a id="header.date" href="#header.date">Date</a></h2>
    1611       <p id="rfc.section.8.3.p.1">The Date general-header field represents the date and time at which the message was originated, having the same semantics
     1614      <p id="rfc.section.8.3.p.1">The general-header field "Date" represents the date and time at which the message was originated, having the same semantics
    16121615         as orig-date in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#full.date" title="Full Date">Section&nbsp;3.3.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format.
    16131616      </p>
    1614       <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.75"></span>  <a href="#header.date" class="smpl">Date</a>  = "Date" ":" <a href="#full.date" class="smpl">HTTP-date</a>
     1617      <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span>  <a href="#header.date" class="smpl">Date</a>   = "Date" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a>
     1618  <a href="#header.date" class="smpl">Date-v</a> = <a href="#full.date" class="smpl">HTTP-date</a>
    16151619</pre><p id="rfc.section.8.3.p.3">An example is</p>
    1616       <div id="rfc.figure.u.48"></div><pre class="text">    Date: Tue, 15 Nov 1994 08:12:31 GMT
     1620      <div id="rfc.figure.u.48"></div><pre class="text">  Date: Tue, 15 Nov 1994 08:12:31 GMT
    16171621</pre><p id="rfc.section.8.3.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases:
    16181622      </p>
     
    16451649      <div id="rfc.iref.h.7"></div>
    16461650      <h2 id="rfc.section.8.4"><a href="#rfc.section.8.4">8.4</a>&nbsp;<a id="header.host" href="#header.host">Host</a></h2>
    1647       <p id="rfc.section.8.4.p.1">The Host request-header field specifies the Internet host and port number of the resource being requested, as obtained from
     1651      <p id="rfc.section.8.4.p.1">The request-header field "Host" specifies the Internet host and port number of the resource being requested, as obtained from
    16481652         the original URI given by the user or referring resource (generally an HTTP URL, as described in <a href="#http.url" title="http URL">Section&nbsp;3.2.2</a>). The Host field value <em class="bcp14">MUST</em> represent the naming authority of the origin server or gateway given by the original URL. This allows the origin server or
    16491653         gateway to differentiate between internally-ambiguous URLs, such as the root "/" URL of a server for multiple host names on
    16501654         a single IP address.
    16511655      </p>
    1652       <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.76"></span>  <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ] ; <a href="#http.url" title="http URL">Section&nbsp;3.2.2</a>
     1656      <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.79"></span><span id="rfc.iref.g.80"></span>  <a href="#header.host" class="smpl">Host</a>   = "Host" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a>
     1657  <a href="#header.host" class="smpl">Host-v</a> = <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ] ; <a href="#http.url" title="http URL">Section&nbsp;3.2.2</a>
    16531658</pre><p id="rfc.section.8.4.p.3">A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP
    16541659         URL). For example, a request on the origin server for &lt;http://www.example.org/pub/WWW/&gt; would properly include:
    16551660      </p>
    1656       <div id="rfc.figure.u.50"></div><pre class="text">    GET /pub/WWW/ HTTP/1.1
    1657     Host: www.example.org
     1661      <div id="rfc.figure.u.50"></div><pre class="text">  GET /pub/WWW/ HTTP/1.1
     1662  Host: www.example.org
    16581663</pre><p id="rfc.section.8.4.p.5">A client <em class="bcp14">MUST</em> include a Host header field in all HTTP/1.1 request messages. If the requested URI does not include an Internet host name
    16591664         for the service being requested, then the Host header field <em class="bcp14">MUST</em> be given with an empty value. An HTTP/1.1 proxy <em class="bcp14">MUST</em> ensure that any request message it forwards does contain an appropriate Host header field that identifies the service being
     
    16651670      <div id="rfc.iref.h.8"></div>
    16661671      <h2 id="rfc.section.8.5"><a href="#rfc.section.8.5">8.5</a>&nbsp;<a id="header.te" href="#header.te">TE</a></h2>
    1667       <p id="rfc.section.8.5.p.1">The TE request-header field indicates what extension transfer-codings it is willing to accept in the response and whether
     1672      <p id="rfc.section.8.5.p.1">The request-header field "TE" indicates what extension transfer-codings it is willing to accept in the response and whether
    16681673         or not it is willing to accept trailer fields in a chunked transfer-coding. Its value may consist of the keyword "trailers"
    16691674         and/or a comma-separated list of extension transfer-coding names with optional accept parameters (as described in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;3.4</a>).
    16701675      </p>
    1671       <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span>  <a href="#header.te" class="smpl">TE</a>        = "TE" ":" #( <a href="#header.te" class="smpl">t-codings</a> )
     1676      <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span>  <a href="#header.te" class="smpl">TE</a>        = "TE" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a>
     1677  <a href="#header.te" class="smpl">TE-v</a>      = #<a href="#header.te" class="smpl">t-codings</a>
    16721678  <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-extension</a> [ <a href="#abnf.dependencies" class="smpl">accept-params</a> ] )
    16731679</pre><p id="rfc.section.8.5.p.3">The presence of the keyword "trailers" indicates that the client is willing to accept trailer fields in a chunked transfer-coding,
     
    16751681      </p>
    16761682      <p id="rfc.section.8.5.p.4">Examples of its use are:</p>
    1677       <div id="rfc.figure.u.52"></div><pre class="text">    TE: deflate
    1678     TE:
    1679     TE: trailers, deflate;q=0.5
     1683      <div id="rfc.figure.u.52"></div><pre class="text">  TE: deflate
     1684  TE:
     1685  TE: trailers, deflate;q=0.5
    16801686</pre><p id="rfc.section.8.5.p.6">The TE header field only applies to the immediate connection. Therefore, the keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.4" title="Connection">Section&nbsp;8.1</a>) whenever TE is present in an HTTP/1.1 message.
    16811687      </p>
     
    17091715      <div id="rfc.iref.h.9"></div>
    17101716      <h2 id="rfc.section.8.6"><a href="#rfc.section.8.6">8.6</a>&nbsp;<a id="header.trailer" href="#header.trailer">Trailer</a></h2>
    1711       <p id="rfc.section.8.6.p.1">The Trailer general field value indicates that the given set of header fields is present in the trailer of a message encoded
    1712          with chunked transfer-coding.
    1713       </p>
    1714       <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.79"></span>  <a href="#header.trailer" class="smpl">Trailer</a>  = "Trailer" ":" 1#<a href="#message.headers" class="smpl">field-name</a>
     1717      <p id="rfc.section.8.6.p.1">The general field "Trailer" indicates that the given set of header fields is present in the trailer of a message encoded with
     1718         chunked transfer-coding.
     1719      </p>
     1720      <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span>  <a href="#header.trailer" class="smpl">Trailer</a>   = "Trailer" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a>
     1721  <a href="#header.trailer" class="smpl">Trailer-v</a> = 1#<a href="#message.headers" class="smpl">field-name</a>
    17151722</pre><p id="rfc.section.8.6.p.3">An HTTP/1.1 message <em class="bcp14">SHOULD</em> include a Trailer header field in a message using chunked transfer-coding with a non-empty trailer. Doing so allows the recipient
    17161723         to know which header fields to expect in the trailer.
     
    17281735      <div id="rfc.iref.h.10"></div>
    17291736      <h2 id="rfc.section.8.7"><a href="#rfc.section.8.7">8.7</a>&nbsp;<a id="header.transfer-encoding" href="#header.transfer-encoding">Transfer-Encoding</a></h2>
    1730       <p id="rfc.section.8.7.p.1">The Transfer-Encoding general-header field indicates what (if any) type of transformation has been applied to the message
     1737      <p id="rfc.section.8.7.p.1">The general-header "Transfer-Encoding" field indicates what (if any) type of transformation has been applied to the message
    17311738         body in order to safely transfer it between the sender and the recipient. This differs from the content-coding in that the
    17321739         transfer-coding is a property of the message, not of the entity.
    17331740      </p>
    1734       <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.80"></span>  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>       = "Transfer-Encoding" ":" 1#<a href="#transfer.codings" class="smpl">transfer-coding</a>
     1741      <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span>  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>   = "Transfer-Encoding" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a>
     1742  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a>
    17351743</pre><p id="rfc.section.8.7.p.3">Transfer-codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;3.4</a>. An example is:
    17361744      </p>
     
    17421750      <div id="rfc.iref.h.11"></div>
    17431751      <h2 id="rfc.section.8.8"><a href="#rfc.section.8.8">8.8</a>&nbsp;<a id="header.upgrade" href="#header.upgrade">Upgrade</a></h2>
    1744       <p id="rfc.section.8.8.p.1">The Upgrade general-header allows the client to specify what additional communication protocols it supports and would like
     1752      <p id="rfc.section.8.8.p.1">The general-header "Upgrade" allows the client to specify what additional communication protocols it supports and would like
    17451753         to use if the server finds it appropriate to switch protocols. The server <em class="bcp14">MUST</em> use the Upgrade header field within a 101 (Switching Protocols) response to indicate which protocol(s) are being switched.
    17461754      </p>
    1747       <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.81"></span>  <a href="#header.upgrade" class="smpl">Upgrade</a>        = "Upgrade" ":" 1#<a href="#product.tokens" class="smpl">product</a>
     1755      <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.88"></span><span id="rfc.iref.g.89"></span>  <a href="#header.upgrade" class="smpl">Upgrade</a>   = "Upgrade" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a>
     1756  <a href="#header.upgrade" class="smpl">Upgrade-v</a> = 1#<a href="#product.tokens" class="smpl">product</a>
    17481757</pre><p id="rfc.section.8.8.p.3">For example,</p>
    1749       <div id="rfc.figure.u.57"></div><pre class="text">    Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
     1758      <div id="rfc.figure.u.57"></div><pre class="text">  Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
    17501759</pre><p id="rfc.section.8.8.p.5">The Upgrade header field is intended to provide a simple mechanism for transition from HTTP/1.1 to some other, incompatible
    17511760         protocol. It does so by allowing the client to advertise its desire to use another protocol, such as a later version of HTTP
     
    17721781      <div id="rfc.iref.h.12"></div>
    17731782      <h2 id="rfc.section.8.9"><a href="#rfc.section.8.9">8.9</a>&nbsp;<a id="header.via" href="#header.via">Via</a></h2>
    1774       <p id="rfc.section.8.9.p.1">The Via general-header field <em class="bcp14">MUST</em> be used by gateways and proxies to indicate the intermediate protocols and recipients between the user agent and the server
     1783      <p id="rfc.section.8.9.p.1">The general-header field "Via" <em class="bcp14">MUST</em> be used by gateways and proxies to indicate the intermediate protocols and recipients between the user agent and the server
    17751784         on requests, and between the origin server and the client on responses. It is analogous to the "Received" field defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.7">Section 3.6.7</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.5"><cite title="Internet Message Format">[RFC5322]</cite></a> and is intended to be used for tracking message forwards, avoiding request loops, and identifying the protocol capabilities
    17761785         of all senders along the request/response chain.
    17771786      </p>
    1778       <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span>  <a href="#header.via" class="smpl">Via</a> =  "Via" ":" 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#header.via" class="smpl">received-by</a> [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] )
     1787      <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span>  <a href="#header.via" class="smpl">Via</a>               = "Via" <a href="#rule.whitespace" class="smpl">BWS</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a>
     1788  <a href="#header.via" class="smpl">Via-v</a>             = 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#header.via" class="smpl">received-by</a> [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] )
    17791789  <a href="#header.via" class="smpl">received-protocol</a> = [ <a href="#header.via" class="smpl">protocol-name</a> "/" ] <a href="#header.via" class="smpl">protocol-version</a>
    17801790  <a href="#header.via" class="smpl">protocol-name</a>     = <a href="#rule.token.separators" class="smpl">token</a>
     
    17991809         server at www.example.com. The request received by www.example.com would then have the following Via header field:
    18001810      </p>
    1801       <div id="rfc.figure.u.59"></div><pre class="text">    Via: 1.0 fred, 1.1 p.example.net (Apache/1.1)
     1811      <div id="rfc.figure.u.59"></div><pre class="text">  Via: 1.0 fred, 1.1 p.example.net (Apache/1.1)
    18021812</pre><p id="rfc.section.8.9.p.9">Proxies and gateways used as a portal through a network firewall <em class="bcp14">SHOULD NOT</em>, by default, forward the names and ports of hosts within the firewall region. This information <em class="bcp14">SHOULD</em> only be propagated if explicitly enabled. If not enabled, the received-by host of any host behind the firewall <em class="bcp14">SHOULD</em> be replaced by an appropriate pseudonym for that host.
    18031813      </p>
     
    18051815         For example,
    18061816      </p>
    1807       <div id="rfc.figure.u.60"></div><pre class="text">    Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy
     1817      <div id="rfc.figure.u.60"></div><pre class="text">  Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy
    18081818</pre><p id="rfc.section.8.9.p.12">could be collapsed to</p>
    1809       <div id="rfc.figure.u.61"></div><pre class="text">    Via: 1.0 ricky, 1.1 mertz, 1.0 lucy
     1819      <div id="rfc.figure.u.61"></div><pre class="text">  Via: 1.0 ricky, 1.1 mertz, 1.0 lucy
    18101820</pre><p id="rfc.section.8.9.p.14">Applications <em class="bcp14">SHOULD NOT</em> combine multiple entries unless they are all under the same organizational control and the hosts have already been replaced
    18111821         by pseudonyms. Applications <em class="bcp14">MUST NOT</em> combine entries which have different received-protocol values.
     
    25542564         </dd>
    25552565      </dl>
    2556       <p id="rfc.section.D.p.16"> <span id="rfc.iref.g.88"></span>  <dfn>gateway</dfn> 
     2566      <p id="rfc.section.D.p.16"> <span id="rfc.iref.g.97"></span>  <dfn>gateway</dfn> 
    25572567      </p>
    25582568      <dl class="empty">
     
    27342744            not use them yet.
    27352745         </li>
     2746         <li>Rewrite header ABNFs to spell out whitespace rules, factor out value format definitions.</li>
    27362747      </ul>
    27372748      <h1><a id="rfc.copyright" href="#rfc.copyright">Full Copyright Statement</a></h1>
     
    27882799            </li>
    27892800            <li class="indline0"><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul class="ind">
    2790                   <li class="indline1">gateway&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88">D</a></li>
     2801                  <li class="indline1">gateway&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.97">D</a></li>
    27912802                  <li class="indline1"><tt>Grammar</tt>&nbsp;&nbsp;
    27922803                     <ul class="ind">
     
    28052816                        <li class="indline1"><tt>comment</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.9"><b>2.2</b></a></li>
    28062817                        <li class="indline1"><tt>Connection</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.72"><b>8.1</b></a></li>
    2807                         <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.73"><b>8.1</b></a></li>
    2808                         <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.74"><b>8.2</b></a></li>
     2818                        <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.74"><b>8.1</b></a></li>
     2819                        <li class="indline1"><tt>Connection-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.73"><b>8.1</b></a></li>
     2820                        <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.75"><b>8.2</b></a></li>
     2821                        <li class="indline1"><tt>Content-Length-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.76"><b>8.2</b></a></li>
    28092822                        <li class="indline1"><tt>ctext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.10"><b>2.2</b></a></li>
    2810                         <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.75"><b>8.3</b></a></li>
     2823                        <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.77"><b>8.3</b></a></li>
     2824                        <li class="indline1"><tt>Date-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.78"><b>8.3</b></a></li>
    28112825                        <li class="indline1"><tt>date1</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.30"><b>3.3.1</b></a></li>
    28122826                        <li class="indline1"><tt>date2</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.31"><b>3.3.1</b></a></li>
     
    28192833                        <li class="indline1"><tt>general-header</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.61"><b>4.5</b></a></li>
    28202834                        <li class="indline1"><tt>generic-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.54"><b>4.1</b></a></li>
    2821                         <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.76"><b>8.4</b></a></li>
     2835                        <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.79"><b>8.4</b></a></li>
     2836                        <li class="indline1"><tt>Host-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.80"><b>8.4</b></a></li>
    28222837                        <li class="indline1"><tt>HTTP-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.25"><b>3.3.1</b></a></li>
    28232838                        <li class="indline1"><tt>HTTP-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.53"><b>4.1</b></a></li>
     
    28382853                        <li class="indline1"><tt>product</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.51"><b>3.5</b></a></li>
    28392854                        <li class="indline1"><tt>product-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.52"><b>3.5</b></a></li>
    2840                         <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.84"><b>8.9</b></a></li>
    2841                         <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.85"><b>8.9</b></a></li>
    2842                         <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>8.9</b></a></li>
     2855                        <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.93"><b>8.9</b></a></li>
     2856                        <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.94"><b>8.9</b></a></li>
     2857                        <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.96"><b>8.9</b></a></li>
    28432858                        <li class="indline1"><tt>qdtext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.12"><b>2.2</b></a></li>
    28442859                        <li class="indline1"><tt>query</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.21"><b>3.2.1</b></a></li>
     
    28472862                        <li class="indline1"><tt>quoted-text</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.13"><b>2.2</b></a></li>
    28482863                        <li class="indline1"><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.71"><b>6.1.1</b></a></li>
    2849                         <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86"><b>8.9</b></a></li>
    2850                         <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.83"><b>8.9</b></a></li>
     2864                        <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.95"><b>8.9</b></a></li>
     2865                        <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.92"><b>8.9</b></a></li>
    28512866                        <li class="indline1"><tt>relativeURI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.22"><b>3.2.1</b></a></li>
    28522867                        <li class="indline1"><tt>Request</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.62"><b>5</b></a></li>
     
    28612876                        <li class="indline1"><tt>Status-Code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.69"><b>6.1.1</b></a></li>
    28622877                        <li class="indline1"><tt>Status-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.68"><b>6.1</b></a></li>
    2863                         <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.78"><b>8.5</b></a></li>
     2878                        <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.83"><b>8.5</b></a></li>
    28642879                        <li class="indline1"><tt>tchar</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.7"><b>2.2</b></a></li>
    2865                         <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.77"><b>8.5</b></a></li>
     2880                        <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.81"><b>8.5</b></a></li>
     2881                        <li class="indline1"><tt>TE-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.82"><b>8.5</b></a></li>
    28662882                        <li class="indline1"><tt>TEXT</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.5"><b>2.2</b></a></li>
    28672883                        <li class="indline1"><tt>time</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.33"><b>3.3.1</b></a></li>
    28682884                        <li class="indline1"><tt>token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.6"><b>2.2</b></a></li>
    2869                         <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.79"><b>8.6</b></a></li>
     2885                        <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.84"><b>8.6</b></a></li>
    28702886                        <li class="indline1"><tt>trailer-part</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.50"><b>3.4.1</b></a></li>
     2887                        <li class="indline1"><tt>Trailer-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.85"><b>8.6</b></a></li>
    28712888                        <li class="indline1"><tt>transfer-coding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.37"><b>3.4</b></a></li>
    2872                         <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.80"><b>8.7</b></a></li>
     2889                        <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86"><b>8.7</b></a></li>
     2890                        <li class="indline1"><tt>Transfer-Encoding-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>8.7</b></a></li>
    28732891                        <li class="indline1"><tt>transfer-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.38"><b>3.4</b></a></li>
    2874                         <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.81"><b>8.8</b></a></li>
     2892                        <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88"><b>8.8</b></a></li>
     2893                        <li class="indline1"><tt>Upgrade-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.89"><b>8.8</b></a></li>
    28752894                        <li class="indline1"><tt>uri-host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.23"><b>3.2.1</b></a></li>
    28762895                        <li class="indline1"><tt>value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.41"><b>3.4</b></a></li>
    2877                         <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.82"><b>8.9</b></a></li>
     2896                        <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.90"><b>8.9</b></a></li>
     2897                        <li class="indline1"><tt>Via-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.91"><b>8.9</b></a></li>
    28782898                        <li class="indline1"><tt>weekday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.35"><b>3.3.1</b></a></li>
    28792899                        <li class="indline1"><tt>wkday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.34"><b>3.3.1</b></a></li>
Note: See TracChangeset for help on using the changeset viewer.