Changeset 214


Ignore:
Timestamp:
Feb 17, 2008, 12:26:35 PM (12 years ago)
Author:
julian.reschke@…
Message:

Rewrite "token" rule, not using prose; relates to #36.

Location:
draft-ietf-httpbis/latest
Files:
2 edited

Legend:

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

    r213 r214  
    969969</pre><p id="rfc.section.2.2.p.12">Many HTTP/1.1 header field values consist of words separated by LWS or special characters. These special characters <em class="bcp14">MUST</em> be in a quoted string to be used within a parameter value (as defined in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;3.4</a>).
    970970      </p>
    971       <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span>  token          = 1*&lt;any CHAR except CTLs or separators&gt;
    972   separators     = "(" | ")" | "&lt;" | "&gt;" | "@"
     971      <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span>  separators     = "(" | ")" | "&lt;" | "&gt;" | "@"
    973972                 | "," | ";" | ":" | "\" | DQUOTE
    974973                 | "/" | "[" | "]" | "?" | "="
    975974                 | "{" | "}" | SP | HTAB
     975                 
     976  tchar          = "!" | "#" | "$" | "%" | "&amp;" | "'" | "*" | "+" | "-"
     977                 | "." | "^" | "_" | "`" | "|" | "~" | DIGIT | ALPHA
     978                 ; any CHAR except CTLs or separators
     979                 
     980  token          = 1*tchar
    976981</pre><p id="rfc.section.2.2.p.14">Comments can be included in some HTTP header fields by surrounding the comment text with parentheses. Comments are only allowed
    977982         in fields containing "comment" as part of their field value definition. In all other fields, parentheses are considered part
    978983         of the field value.
    979984      </p>
    980       <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span>  comment        = "(" *( ctext | quoted-pair | comment ) ")"
     985      <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span>  comment        = "(" *( ctext | quoted-pair | comment ) ")"
    981986  ctext          = &lt;any TEXT excluding "(" and ")"&gt;
    982987</pre><p id="rfc.section.2.2.p.16">A string of text is parsed as a single word if it is quoted using double-quote marks.</p>
    983       <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span>  quoted-string  = ( DQUOTE *(qdtext | quoted-pair ) DQUOTE )
     988      <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span>  quoted-string  = ( DQUOTE *(qdtext | quoted-pair ) DQUOTE )
    984989  qdtext         = &lt;any TEXT excluding DQUOTE and "\"&gt;
    985990</pre><p id="rfc.section.2.2.p.18">The backslash character ("\") <em class="bcp14">MAY</em> be used as a single-character quoting mechanism only within quoted-string and comment constructs.
    986991      </p>
    987       <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.22"></span>  quoted-pair    = "\" CHAR
     992      <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.23"></span>  quoted-pair    = "\" CHAR
    988993</pre><h2 id="rfc.section.2.3"><a href="#rfc.section.2.3">2.3</a>&nbsp;<a id="abnf.dependencies" href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></h2>
    989994      <p id="rfc.section.2.3.p.1">The ABNF rules below are defined in other parts:</p>
     
    10071012      </p>
    10081013      <p id="rfc.section.3.1.p.2">The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. HTTP-Version is case-sensitive.</p>
    1009       <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.23"></span>  HTTP-Version   = "HTTP" "/" 1*DIGIT "." 1*DIGIT
     1014      <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.24"></span>  HTTP-Version   = "HTTP" "/" 1*DIGIT "." 1*DIGIT
    10101015</pre><p id="rfc.section.3.1.p.4">Note that the major and minor numbers <em class="bcp14">MUST</em> be treated as separate integers and that each <em class="bcp14">MAY</em> be incremented higher than a single digit. Thus, HTTP/2.4 is a lower version than HTTP/2.13, which in turn is lower than HTTP/12.3.
    10111016         Leading zeros <em class="bcp14">MUST</em> be ignored by recipients and <em class="bcp14">MUST NOT</em> be sent.
     
    10371042         "abs_path", "query", and "authority" from that specification:
    10381043      </p>
    1039       <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span>  absoluteURI   = &lt;absoluteURI, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.2"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3">Section 3</a>&gt;
     1044      <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span>  absoluteURI   = &lt;absoluteURI, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.2"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3">Section 3</a>&gt;
    10401045  authority     = &lt;authority, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.3"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3.2">Section 3.2</a>&gt;
    10411046  fragment      = &lt;fragment, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.4"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-4.1">Section 4.1</a>&gt;
     
    10571062         and semantics for http URLs.
    10581063      </p>
    1059       <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.31"></span>  http-URL = "http:" "//" uri-host [ ":" port ]
     1064      <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.32"></span>  http-URL = "http:" "//" uri-host [ ":" port ]
    10601065             [ path-absolute [ "?" query ]]
    10611066</pre><p id="rfc.section.3.2.2.p.3">If the port is empty or not given, port 80 is assumed. The semantics are that the identified resource is located at the server
     
    10971102         time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional LWS beyond that specifically included as SP in the grammar.
    10981103      </p>
    1099       <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span>  HTTP-date    = rfc1123-date | rfc850-date | asctime-date
     1104      <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span>  HTTP-date    = rfc1123-date | rfc850-date | asctime-date
    11001105  rfc1123-date = wkday "," SP date1 SP time SP "GMT"
    11011106  rfc850-date  = weekday "," SP date2 SP time SP "GMT"
     
    11241129         is a property of the message, not of the original entity.
    11251130      </p>
    1126       <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span>  transfer-coding         = "chunked" | transfer-extension
     1131      <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span>  transfer-coding         = "chunked" | transfer-extension
    11271132  transfer-extension      = token *( ";" parameter )
    11281133</pre><p id="rfc.section.3.4.p.3">Parameters are in the form of attribute/value pairs.</p>
    1129       <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span>  parameter               = attribute "=" value
     1134      <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span>  parameter               = attribute "=" value
    11301135  attribute               = token
    11311136  value                   = token | quoted-string
     
    11521157         necessary for the recipient to verify that it has received the full message.
    11531158      </p>
    1154       <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span>  Chunked-Body   = *chunk
     1159      <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span>  Chunked-Body   = *chunk
    11551160                   last-chunk
    11561161                   trailer-part
     
    12111216         space. By convention, the products are listed in order of their significance for identifying the application.
    12121217      </p>
    1213       <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span>  product         = token ["/" product-version]
     1218      <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span>  product         = token ["/" product-version]
    12141219  product-version = token
    12151220</pre><p id="rfc.section.3.5.p.3">Examples:</p>
     
    12211226      <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a>&nbsp;<a id="message.types" href="#message.types">Message Types</a></h2>
    12221227      <p id="rfc.section.4.1.p.1">HTTP messages consist of requests from client to server and responses from server to client.</p>
    1223       <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.59"></span>  HTTP-message   = Request | Response     ; HTTP/1.1 messages
     1228      <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.60"></span>  HTTP-message   = Request | Response     ; HTTP/1.1 messages
    12241229</pre><p id="rfc.section.4.1.p.3">Request (<a href="#request" title="Request">Section&nbsp;5</a>) and Response (<a href="#response" title="Response">Section&nbsp;6</a>) messages use the generic message format of <a href="#RFC2822" id="rfc.xref.RFC2822.2"><cite title="Internet Message Format">[RFC2822]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header
    12251230         fields (also known as "headers"), an empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header
    12261231         fields, and possibly a message-body.
    12271232      </p>
    1228       <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.60"></span><span id="rfc.iref.g.61"></span>  generic-message = start-line
     1233      <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.61"></span><span id="rfc.iref.g.62"></span>  generic-message = start-line
    12291234                    *(message-header CRLF)
    12301235                    CRLF
     
    12441249         forms.
    12451250      </p>
    1246       <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.62"></span><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span><span id="rfc.iref.g.65"></span>  message-header = field-name ":" [ field-value ]
     1251      <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span><span id="rfc.iref.g.65"></span><span id="rfc.iref.g.66"></span>  message-header = field-name ":" [ field-value ]
    12471252  field-name     = token
    12481253  field-value    = *( field-content | LWS )
     
    12691274         header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.2" title="Transfer-Encoding">Section&nbsp;8.7</a>).
    12701275      </p>
    1271       <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.66"></span>  message-body = entity-body
     1276      <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.67"></span>  message-body = entity-body
    12721277               | &lt;entity-body encoded as per Transfer-Encoding&gt;
    12731278</pre><p id="rfc.section.4.3.p.3">Transfer-Encoding <em class="bcp14">MUST</em> be used to indicate any transfer-codings applied by an application to ensure safe and proper transfer of the message. Transfer-Encoding
     
    13361341         to the entity being transferred. These header fields apply only to the message being transmitted.
    13371342      </p>
    1338       <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.67"></span>  general-header = Cache-Control            ; <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 16.2</a>
     1343      <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.68"></span>  general-header = Cache-Control            ; <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 16.2</a>
    13391344                 | Connection               ; <a href="#header.connection" id="rfc.xref.header.connection.1" title="Connection">Section&nbsp;8.1</a>
    13401345                 | Date                     ; <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section&nbsp;8.3</a>
     
    13531358         resource, the identifier of the resource, and the protocol version in use.
    13541359      </p>
    1355       <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.68"></span>  Request       = Request-Line              ; <a href="#request-line" title="Request-Line">Section&nbsp;5.1</a>
     1360      <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.69"></span>  Request       = Request-Line              ; <a href="#request-line" title="Request-Line">Section&nbsp;5.1</a>
    13561361                  *(( general-header        ; <a href="#general.header.fields" title="General Header Fields">Section&nbsp;4.5</a>
    13571362                   | request-header         ; <a href="#Part2" id="rfc.xref.Part2.7"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a>
     
    13631368         elements are separated by SP characters. No CR or LF is allowed except in the final CRLF sequence.
    13641369      </p>
    1365       <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.69"></span>  Request-Line   = Method SP Request-URI SP HTTP-Version CRLF
     1370      <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.70"></span>  Request-Line   = Method SP Request-URI SP HTTP-Version CRLF
    13661371</pre><h3 id="rfc.section.5.1.1"><a href="#rfc.section.5.1.1">5.1.1</a>&nbsp;<a id="method" href="#method">Method</a></h3>
    13671372      <p id="rfc.section.5.1.1.p.1">The Method token indicates the method to be performed on the resource identified by the Request-URI. The method is case-sensitive.</p>
    1368       <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.70"></span><span id="rfc.iref.g.71"></span>  Method         = token
     1373      <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span>  Method         = token
    13691374</pre><h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a>&nbsp;<a id="request-uri" href="#request-uri">Request-URI</a></h3>
    13701375      <p id="rfc.section.5.1.2.p.1">The Request-URI is a Uniform Resource Identifier (<a href="#uri" title="Uniform Resource Identifiers">Section&nbsp;3.2</a>) and identifies the resource upon which to apply the request.
    13711376      </p>
    1372       <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.72"></span>  Request-URI    = "*"
     1377      <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.73"></span>  Request-URI    = "*"
    13731378                 | absoluteURI
    13741379                 | ( path-absolute [ "?" query ] )
     
    14311436      <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a>&nbsp;<a id="response" href="#response">Response</a></h1>
    14321437      <p id="rfc.section.6.p.1">After receiving and interpreting a request message, a server responds with an HTTP response message.</p>
    1433       <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.73"></span>  Response      = Status-Line               ; <a href="#status-line" title="Status-Line">Section&nbsp;6.1</a>
     1438      <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.74"></span>  Response      = Status-Line               ; <a href="#status-line" title="Status-Line">Section&nbsp;6.1</a>
    14341439                  *(( general-header        ; <a href="#general.header.fields" title="General Header Fields">Section&nbsp;4.5</a>
    14351440                   | response-header        ; <a href="#Part2" id="rfc.xref.Part2.9"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a>
     
    14421447         CRLF sequence.
    14431448      </p>
    1444       <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.74"></span>  Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
     1449      <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.75"></span>  Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
    14451450</pre><h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a>&nbsp;<a id="status.code.and.reason.phrase" href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a></h3>
    14461451      <p id="rfc.section.6.1.1.p.1">The Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes
     
    14591464         <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li>
    14601465      </ul>
    1461       <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.75"></span><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span>  Status-Code    = 3DIGIT
     1466      <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span>  Status-Code    = 3DIGIT
    14621467  Reason-Phrase  = *&lt;TEXT, excluding CR, LF&gt;
    14631468</pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a>&nbsp;<a id="connections" href="#connections">Connections</a></h1>
     
    16501655      </p>
    16511656      <p id="rfc.section.8.1.p.2">The Connection header has the following grammar:</p>
    1652       <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.78"></span><span id="rfc.iref.g.79"></span>  Connection = "Connection" ":" 1#(connection-token)
     1657      <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.79"></span><span id="rfc.iref.g.80"></span>  Connection = "Connection" ":" 1#(connection-token)
    16531658  connection-token  = token
    16541659</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
     
    16781683         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.
    16791684      </p>
    1680       <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.80"></span>  Content-Length    = "Content-Length" ":" 1*DIGIT
     1685      <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.81"></span>  Content-Length    = "Content-Length" ":" 1*DIGIT
    16811686</pre><p id="rfc.section.8.2.p.3">An example is</p>
    16821687      <div id="rfc.figure.u.46"></div><pre class="text">    Content-Length: 3495
     
    16951700         as orig-date in <a href="http://tools.ietf.org/html/rfc2822#section-3.6.1">Section 3.6.1</a> of <a href="#RFC2822" id="rfc.xref.RFC2822.4"><cite title="Internet Message Format">[RFC2822]</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.
    16961701      </p>
    1697       <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.81"></span>  Date  = "Date" ":" HTTP-date
     1702      <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.82"></span>  Date  = "Date" ":" HTTP-date
    16981703</pre><p id="rfc.section.8.3.p.3">An example is</p>
    16991704      <div id="rfc.figure.u.48"></div><pre class="text">    Date: Tue, 15 Nov 1994 08:12:31 GMT
     
    17331738         a single IP address.
    17341739      </p>
    1735       <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.82"></span>  Host = "Host" ":" uri-host [ ":" port ] ; <a href="#http.url" title="http URL">Section&nbsp;3.2.2</a>
     1740      <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.83"></span>  Host = "Host" ":" uri-host [ ":" port ] ; <a href="#http.url" title="http URL">Section&nbsp;3.2.2</a>
    17361741</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
    17371742         URL). For example, a request on the origin server for &lt;http://www.example.org/pub/WWW/&gt; would properly include:
     
    17521757         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>).
    17531758      </p>
    1754       <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span>  TE        = "TE" ":" #( t-codings )
     1759      <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span>  TE        = "TE" ":" #( t-codings )
    17551760  t-codings = "trailers" | ( transfer-extension [ accept-params ] )
    17561761</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,
     
    17951800         with chunked transfer-coding.
    17961801      </p>
    1797       <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.85"></span>  Trailer  = "Trailer" ":" 1#field-name
     1802      <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.86"></span>  Trailer  = "Trailer" ":" 1#field-name
    17981803</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
    17991804         to know which header fields to expect in the trailer.
     
    18151820         transfer-coding is a property of the message, not of the entity.
    18161821      </p>
    1817       <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.86"></span>  Transfer-Encoding       = "Transfer-Encoding" ":" 1#transfer-coding
     1822      <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.87"></span>  Transfer-Encoding       = "Transfer-Encoding" ":" 1#transfer-coding
    18181823</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:
    18191824      </p>
     
    18281833         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.
    18291834      </p>
    1830       <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.87"></span>  Upgrade        = "Upgrade" ":" 1#product
     1835      <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.88"></span>  Upgrade        = "Upgrade" ":" 1#product
    18311836</pre><p id="rfc.section.8.8.p.3">For example,</p>
    18321837      <div id="rfc.figure.u.57"></div><pre class="text">    Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
     
    18591864         of all senders along the request/response chain.
    18601865      </p>
    1861       <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.88"></span><span id="rfc.iref.g.89"></span><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>  Via =  "Via" ":" 1#( received-protocol received-by [ comment ] )
     1866      <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.89"></span><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>  Via =  "Via" ":" 1#( received-protocol received-by [ comment ] )
    18621867  received-protocol = [ protocol-name "/" ] protocol-version
    18631868  protocol-name     = token
     
    25102515         <li>Move "Product Tokens" section (back) into Part 1, as "token" is used in the definition of the Upgrade header.</li>
    25112516         <li>Add explicit references to BNF syntax and rules imported from other parts of the specification.</li>
     2517         <li>Rewrite prose rule "token" in terms of "tchar".</li>
    25122518      </ul>
    25132519      <h1><a id="rfc.copyright" href="#rfc.copyright">Full Copyright Statement</a></h1>
     
    25702576                  <li class="indline1"><tt>Grammar</tt>&nbsp;&nbsp;
    25712577                     <ul class="ind">
    2572                         <li class="indline1"><tt>absoluteURI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.24"><b>3.2.1</b></a></li>
     2578                        <li class="indline1"><tt>absoluteURI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.25"><b>3.2.1</b></a></li>
    25732579                        <li class="indline1"><tt>ALPHA</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.4"><b>2.2</b></a></li>
    2574                         <li class="indline1"><tt>asctime-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.35"><b>3.3.1</b></a></li>
    2575                         <li class="indline1"><tt>attribute</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.46"><b>3.4</b></a></li>
    2576                         <li class="indline1"><tt>authority</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.25"><b>3.2.1</b></a></li>
     2580                        <li class="indline1"><tt>asctime-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.36"><b>3.3.1</b></a></li>
     2581                        <li class="indline1"><tt>attribute</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.47"><b>3.4</b></a></li>
     2582                        <li class="indline1"><tt>authority</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.26"><b>3.2.1</b></a></li>
    25772583                        <li class="indline1"><tt>CHAR</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.3"><b>2.2</b></a></li>
    2578                         <li class="indline1"><tt>chunk</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.49"><b>3.4.1</b></a></li>
    2579                         <li class="indline1"><tt>chunk-data</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.55"><b>3.4.1</b></a></li>
    2580                         <li class="indline1"><tt>chunk-ext-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.53"><b>3.4.1</b></a></li>
    2581                         <li class="indline1"><tt>chunk-ext-val</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.54"><b>3.4.1</b></a></li>
    2582                         <li class="indline1"><tt>chunk-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.52"><b>3.4.1</b></a></li>
    2583                         <li class="indline1"><tt>chunk-size</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.50"><b>3.4.1</b></a></li>
    2584                         <li class="indline1"><tt>Chunked-Body</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.48"><b>3.4.1</b></a></li>
    2585                         <li class="indline1"><tt>comment</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.18"><b>2.2</b></a></li>
    2586                         <li class="indline1"><tt>Connection</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.78"><b>8.1</b></a></li>
    2587                         <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.79"><b>8.1</b></a></li>
    2588                         <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.80"><b>8.2</b></a></li>
     2584                        <li class="indline1"><tt>chunk</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.50"><b>3.4.1</b></a></li>
     2585                        <li class="indline1"><tt>chunk-data</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.56"><b>3.4.1</b></a></li>
     2586                        <li class="indline1"><tt>chunk-ext-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.54"><b>3.4.1</b></a></li>
     2587                        <li class="indline1"><tt>chunk-ext-val</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.55"><b>3.4.1</b></a></li>
     2588                        <li class="indline1"><tt>chunk-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.53"><b>3.4.1</b></a></li>
     2589                        <li class="indline1"><tt>chunk-size</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.51"><b>3.4.1</b></a></li>
     2590                        <li class="indline1"><tt>Chunked-Body</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.49"><b>3.4.1</b></a></li>
     2591                        <li class="indline1"><tt>comment</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.19"><b>2.2</b></a></li>
     2592                        <li class="indline1"><tt>Connection</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.79"><b>8.1</b></a></li>
     2593                        <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.80"><b>8.1</b></a></li>
     2594                        <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.81"><b>8.2</b></a></li>
    25892595                        <li class="indline1"><tt>CR</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.7"><b>2.2</b></a></li>
    25902596                        <li class="indline1"><tt>CRLF</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.12"><b>2.2</b></a></li>
    2591                         <li class="indline1"><tt>ctext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.19"><b>2.2</b></a></li>
     2597                        <li class="indline1"><tt>ctext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.20"><b>2.2</b></a></li>
    25922598                        <li class="indline1"><tt>CTL</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.6"><b>2.2</b></a></li>
    2593                         <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.81"><b>8.3</b></a></li>
    2594                         <li class="indline1"><tt>date1</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.36"><b>3.3.1</b></a></li>
    2595                         <li class="indline1"><tt>date2</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.37"><b>3.3.1</b></a></li>
    2596                         <li class="indline1"><tt>date3</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.38"><b>3.3.1</b></a></li>
     2599                        <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.82"><b>8.3</b></a></li>
     2600                        <li class="indline1"><tt>date1</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.37"><b>3.3.1</b></a></li>
     2601                        <li class="indline1"><tt>date2</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.38"><b>3.3.1</b></a></li>
     2602                        <li class="indline1"><tt>date3</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.39"><b>3.3.1</b></a></li>
    25972603                        <li class="indline1"><tt>DIGIT</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.5"><b>2.2</b></a></li>
    25982604                        <li class="indline1"><tt>DQUOTE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.11"><b>2.2</b></a></li>
    2599                         <li class="indline1"><tt>extension-code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.76"><b>6.1.1</b></a></li>
    2600                         <li class="indline1"><tt>extension-method</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.71"><b>5.1.1</b></a></li>
    2601                         <li class="indline1"><tt>field-content</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.65"><b>4.2</b></a></li>
    2602                         <li class="indline1"><tt>field-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.63"><b>4.2</b></a></li>
    2603                         <li class="indline1"><tt>field-value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.64"><b>4.2</b></a></li>
    2604                         <li class="indline1"><tt>general-header</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.67"><b>4.5</b></a></li>
    2605                         <li class="indline1"><tt>generic-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.60"><b>4.1</b></a></li>
     2605                        <li class="indline1"><tt>extension-code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.77"><b>6.1.1</b></a></li>
     2606                        <li class="indline1"><tt>extension-method</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.72"><b>5.1.1</b></a></li>
     2607                        <li class="indline1"><tt>field-content</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.66"><b>4.2</b></a></li>
     2608                        <li class="indline1"><tt>field-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.64"><b>4.2</b></a></li>
     2609                        <li class="indline1"><tt>field-value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.65"><b>4.2</b></a></li>
     2610                        <li class="indline1"><tt>general-header</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.68"><b>4.5</b></a></li>
     2611                        <li class="indline1"><tt>generic-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.61"><b>4.1</b></a></li>
    26062612                        <li class="indline1"><tt>HEX</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.15"><b>2.2</b></a></li>
    2607                         <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.82"><b>8.4</b></a></li>
     2613                        <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.83"><b>8.4</b></a></li>
    26082614                        <li class="indline1"><tt>HTAB</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.10"><b>2.2</b></a></li>
    2609                         <li class="indline1"><tt>HTTP-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.32"><b>3.3.1</b></a></li>
    2610                         <li class="indline1"><tt>HTTP-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.59"><b>4.1</b></a></li>
    2611                         <li class="indline1"><tt>http-URL</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.31"><b>3.2.2</b></a></li>
    2612                         <li class="indline1"><tt>HTTP-Version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.23"><b>3.1</b></a></li>
    2613                         <li class="indline1"><tt>last-chunk</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.51"><b>3.4.1</b></a></li>
     2615                        <li class="indline1"><tt>HTTP-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.33"><b>3.3.1</b></a></li>
     2616                        <li class="indline1"><tt>HTTP-message</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.60"><b>4.1</b></a></li>
     2617                        <li class="indline1"><tt>http-URL</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.32"><b>3.2.2</b></a></li>
     2618                        <li class="indline1"><tt>HTTP-Version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.24"><b>3.1</b></a></li>
     2619                        <li class="indline1"><tt>last-chunk</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.52"><b>3.4.1</b></a></li>
    26142620                        <li class="indline1"><tt>LF</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.8"><b>2.2</b></a></li>
    26152621                        <li class="indline1"><tt>LWS</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.13"><b>2.2</b></a></li>
    2616                         <li class="indline1"><tt>message-body</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.66"><b>4.3</b></a></li>
    2617                         <li class="indline1"><tt>message-header</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.62"><b>4.2</b></a></li>
    2618                         <li class="indline1"><tt>Method</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.70"><b>5.1.1</b></a></li>
    2619                         <li class="indline1"><tt>month</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.42"><b>3.3.1</b></a></li>
     2622                        <li class="indline1"><tt>message-body</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.67"><b>4.3</b></a></li>
     2623                        <li class="indline1"><tt>message-header</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.63"><b>4.2</b></a></li>
     2624                        <li class="indline1"><tt>Method</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.71"><b>5.1.1</b></a></li>
     2625                        <li class="indline1"><tt>month</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.43"><b>3.3.1</b></a></li>
    26202626                        <li class="indline1"><tt>OCTET</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.2"><b>2.2</b></a></li>
    2621                         <li class="indline1"><tt>parameter</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.45"><b>3.4</b></a></li>
    2622                         <li class="indline1"><tt>path-absolute</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.26"><b>3.2.1</b></a></li>
    2623                         <li class="indline1"><tt>port</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.27"><b>3.2.1</b></a></li>
    2624                         <li class="indline1"><tt>product</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.57"><b>3.5</b></a></li>
    2625                         <li class="indline1"><tt>product-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.58"><b>3.5</b></a></li>
    2626                         <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.90"><b>8.9</b></a></li>
    2627                         <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.91"><b>8.9</b></a></li>
    2628                         <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.93"><b>8.9</b></a></li>
    2629                         <li class="indline1"><tt>qdtext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.21"><b>2.2</b></a></li>
    2630                         <li class="indline1"><tt>query</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.28"><b>3.2.1</b></a></li>
    2631                         <li class="indline1"><tt>quoted-pair</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.22"><b>2.2</b></a></li>
    2632                         <li class="indline1"><tt>quoted-string</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.20"><b>2.2</b></a></li>
    2633                         <li class="indline1"><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.77"><b>6.1.1</b></a></li>
    2634                         <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.92"><b>8.9</b></a></li>
    2635                         <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.89"><b>8.9</b></a></li>
    2636                         <li class="indline1"><tt>relativeURI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.29"><b>3.2.1</b></a></li>
    2637                         <li class="indline1"><tt>Request</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.68"><b>5</b></a></li>
    2638                         <li class="indline1"><tt>Request-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.69"><b>5.1</b></a></li>
    2639                         <li class="indline1"><tt>Request-URI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.72"><b>5.1.2</b></a></li>
    2640                         <li class="indline1"><tt>Response</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.73"><b>6</b></a></li>
    2641                         <li class="indline1"><tt>rfc1123-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.33"><b>3.3.1</b></a></li>
    2642                         <li class="indline1"><tt>rfc850-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.34"><b>3.3.1</b></a></li>
    2643                         <li class="indline1"><tt>separators</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.17"><b>2.2</b></a></li>
     2627                        <li class="indline1"><tt>parameter</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.46"><b>3.4</b></a></li>
     2628                        <li class="indline1"><tt>path-absolute</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.27"><b>3.2.1</b></a></li>
     2629                        <li class="indline1"><tt>port</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.28"><b>3.2.1</b></a></li>
     2630                        <li class="indline1"><tt>product</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.58"><b>3.5</b></a></li>
     2631                        <li class="indline1"><tt>product-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.59"><b>3.5</b></a></li>
     2632                        <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.91"><b>8.9</b></a></li>
     2633                        <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.92"><b>8.9</b></a></li>
     2634                        <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.94"><b>8.9</b></a></li>
     2635                        <li class="indline1"><tt>qdtext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.22"><b>2.2</b></a></li>
     2636                        <li class="indline1"><tt>query</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.29"><b>3.2.1</b></a></li>
     2637                        <li class="indline1"><tt>quoted-pair</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.23"><b>2.2</b></a></li>
     2638                        <li class="indline1"><tt>quoted-string</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.21"><b>2.2</b></a></li>
     2639                        <li class="indline1"><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.78"><b>6.1.1</b></a></li>
     2640                        <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.93"><b>8.9</b></a></li>
     2641                        <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.90"><b>8.9</b></a></li>
     2642                        <li class="indline1"><tt>relativeURI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.30"><b>3.2.1</b></a></li>
     2643                        <li class="indline1"><tt>Request</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.69"><b>5</b></a></li>
     2644                        <li class="indline1"><tt>Request-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.70"><b>5.1</b></a></li>
     2645                        <li class="indline1"><tt>Request-URI</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.73"><b>5.1.2</b></a></li>
     2646                        <li class="indline1"><tt>Response</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.74"><b>6</b></a></li>
     2647                        <li class="indline1"><tt>rfc1123-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.34"><b>3.3.1</b></a></li>
     2648                        <li class="indline1"><tt>rfc850-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.35"><b>3.3.1</b></a></li>
     2649                        <li class="indline1"><tt>separators</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.18"><b>2.2</b></a></li>
    26442650                        <li class="indline1"><tt>SP</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.9"><b>2.2</b></a></li>
    2645                         <li class="indline1"><tt>start-line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.61"><b>4.1</b></a></li>
    2646                         <li class="indline1"><tt>Status-Code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.75"><b>6.1.1</b></a></li>
    2647                         <li class="indline1"><tt>Status-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.74"><b>6.1</b></a></li>
    2648                         <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.84"><b>8.5</b></a></li>
    2649                         <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.83"><b>8.5</b></a></li>
     2651                        <li class="indline1"><tt>start-line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.62"><b>4.1</b></a></li>
     2652                        <li class="indline1"><tt>Status-Code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.76"><b>6.1.1</b></a></li>
     2653                        <li class="indline1"><tt>Status-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.75"><b>6.1</b></a></li>
     2654                        <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.85"><b>8.5</b></a></li>
     2655                        <li class="indline1"><tt>tchar</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.17"><b>2.2</b></a></li>
     2656                        <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.84"><b>8.5</b></a></li>
    26502657                        <li class="indline1"><tt>TEXT</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.14"><b>2.2</b></a></li>
    2651                         <li class="indline1"><tt>time</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.39"><b>3.3.1</b></a></li>
     2658                        <li class="indline1"><tt>time</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.40"><b>3.3.1</b></a></li>
    26522659                        <li class="indline1"><tt>token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.16"><b>2.2</b></a></li>
    2653                         <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.85"><b>8.6</b></a></li>
    2654                         <li class="indline1"><tt>trailer-part</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.56"><b>3.4.1</b></a></li>
    2655                         <li class="indline1"><tt>transfer-coding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.43"><b>3.4</b></a></li>
    2656                         <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86"><b>8.7</b></a></li>
    2657                         <li class="indline1"><tt>transfer-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.44"><b>3.4</b></a></li>
    2658                         <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>8.8</b></a></li>
    2659                         <li class="indline1"><tt>uri-host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.30"><b>3.2.1</b></a></li>
    2660                         <li class="indline1"><tt>value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.47"><b>3.4</b></a></li>
    2661                         <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88"><b>8.9</b></a></li>
    2662                         <li class="indline1"><tt>weekday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.41"><b>3.3.1</b></a></li>
    2663                         <li class="indline1"><tt>wkday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.40"><b>3.3.1</b></a></li>
     2660                        <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86"><b>8.6</b></a></li>
     2661                        <li class="indline1"><tt>trailer-part</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.57"><b>3.4.1</b></a></li>
     2662                        <li class="indline1"><tt>transfer-coding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.44"><b>3.4</b></a></li>
     2663                        <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>8.7</b></a></li>
     2664                        <li class="indline1"><tt>transfer-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.45"><b>3.4</b></a></li>
     2665                        <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88"><b>8.8</b></a></li>
     2666                        <li class="indline1"><tt>uri-host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.31"><b>3.2.1</b></a></li>
     2667                        <li class="indline1"><tt>value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.48"><b>3.4</b></a></li>
     2668                        <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.89"><b>8.9</b></a></li>
     2669                        <li class="indline1"><tt>weekday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.42"><b>3.3.1</b></a></li>
     2670                        <li class="indline1"><tt>wkday</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.41"><b>3.3.1</b></a></li>
    26642671                     </ul>
    26652672                  </li>
  • draft-ietf-httpbis/latest/p1-messaging.xml

    r212 r214  
    907907   <xref target="transfer.codings"/>).
    908908</t>
    909 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="token"/><iref primary="true" item="Grammar" subitem="separators"/>
    910   token          = 1*&lt;any CHAR except CTLs or separators&gt;
     909<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="token"/><iref primary="true" item="Grammar" subitem="tchar"/><iref primary="true" item="Grammar" subitem="separators"/>
    911910  separators     = "(" | ")" | "&lt;" | "&gt;" | "@"
    912911                 | "," | ";" | ":" | "\" | DQUOTE
    913912                 | "/" | "[" | "]" | "?" | "="
    914913                 | "{" | "}" | SP | HTAB
     914                 
     915  tchar          = "!" | "#" | "$" | "%" | "&amp;" | "'" | "*" | "+" | "-"
     916                 | "." | "^" | "_" | "`" | "|" | "~" | DIGIT | ALPHA
     917                 ; any CHAR except CTLs or separators
     918                 
     919  token          = 1*tchar
    915920</artwork></figure>
    916921<t>
     
    42894294      Add explicit references to BNF syntax and rules imported from other parts of the specification.
    42904295    </t>
     4296    <t>
     4297      Rewrite prose rule "token" in terms of "tchar".
     4298    </t>
    42914299  </list>
    42924300</t>
Note: See TracChangeset for help on using the changeset viewer.