Changeset 1235


Ignore:
Timestamp:
Mar 30, 2011, 2:16:53 AM (9 years ago)
Author:
julian.reschke@…
Message:

rewrite header field ABNFs to only specify the field value (see #276)

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

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/httpbis.abnf

    r1234 r1235  
    99Accept-Ranges = acceptable-ranges
    1010Age = delta-seconds
    11 Allow = "Allow:" OWS Allow-v
    12 Allow-v = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
     11Allow = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
    1312Authorization = credentials
    1413BWS = OWS
     
    2827Date-v = HTTP-date
    2928ETag = entity-tag
    30 Expect = "Expect:" OWS Expect-v
    31 Expect-v = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     29Expect = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
    3230Expires = HTTP-date
    33 From = "From:" OWS From-v
    34 From-v = mailbox
     31From = mailbox
    3532GMT = %x47.4D.54 ; GMT
    3633
     
    4845If-Unmodified-Since = HTTP-date
    4946Last-Modified = HTTP-date
    50 Location = "Location:" OWS Location-v
    51 Location-v = URI-reference
     47Location = URI-reference
    5248MIME-Version = 1*DIGIT "." 1*DIGIT
    53 Max-Forwards = "Max-Forwards:" OWS Max-Forwards-v
    54 Max-Forwards-v = 1*DIGIT
     49Max-Forwards = 1*DIGIT
    5550Method = token
    5651OWS = *( [ obs-fold ] WSP )
     
    6156Range = byte-ranges-specifier / other-ranges-specifier
    6257Reason-Phrase = *( WSP / VCHAR / obs-text )
    63 Referer = "Referer:" OWS Referer-v
    64 Referer-v = absolute-URI / partial-URI
     58Referer = absolute-URI / partial-URI
    6559Request = Request-Line *( header-field CRLF ) CRLF [ message-body ]
    6660Request-Line = Method SP request-target SP HTTP-Version CRLF
    6761Response = Status-Line *( header-field CRLF ) CRLF [ message-body ]
    68 Retry-After = "Retry-After:" OWS Retry-After-v
    69 Retry-After-v = HTTP-date / delta-seconds
    70 Server = "Server:" OWS Server-v
    71 Server-v = product *( RWS ( product / comment ) )
     62Retry-After = HTTP-date / delta-seconds
     63Server = product *( RWS ( product / comment ) )
    7264Status-Code = 3DIGIT
    7365Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
     
    8173Upgrade = "Upgrade:" OWS Upgrade-v
    8274Upgrade-v = *( "," OWS ) product *( OWS "," [ OWS product ] )
    83 User-Agent = "User-Agent:" OWS User-Agent-v
    84 User-Agent-v = product *( RWS ( product / comment ) )
     75User-Agent = product *( RWS ( product / comment ) )
    8576Vary = "*" / ( *( "," OWS ) field-name *( OWS "," [ OWS field-name ] ) )
    8677Via = "Via:" OWS Via-v
  • draft-ietf-httpbis/latest/p2-semantics.html

    r1228 r1235  
    359359  }
    360360  @bottom-center {
    361        content: "Expires September 30, 2011";
     361       content: "Expires October 1, 2011";
    362362  }
    363363  @bottom-right {
     
    409409      <meta name="dct.creator" content="Reschke, J. F.">
    410410      <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p2-semantics-latest">
    411       <meta name="dct.issued" scheme="ISO8601" content="2011-03-29">
     411      <meta name="dct.issued" scheme="ISO8601" content="2011-03-30">
    412412      <meta name="dct.replaces" content="urn:ietf:rfc:2616">
    413413      <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the seven-part specification that defines the protocol referred to as &#34;HTTP/1.1&#34; and, taken together, obsoletes RFC 2616. Part 2 defines the semantics of HTTP messages as expressed by request methods, request header fields, response status codes, and response header fields.">
     
    440440            </tr>
    441441            <tr>
    442                <td class="left">Expires: September 30, 2011</td>
     442               <td class="left">Expires: October 1, 2011</td>
    443443               <td class="right">HP</td>
    444444            </tr>
     
    493493            <tr>
    494494               <td class="left"></td>
    495                <td class="right">March 29, 2011</td>
     495               <td class="right">March 30, 2011</td>
    496496            </tr>
    497497         </tbody>
     
    520520         in progress”.
    521521      </p>
    522       <p>This Internet-Draft will expire on September 30, 2011.</p>
     522      <p>This Internet-Draft will expire on October 1, 2011.</p>
    523523      <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1>
    524524      <p>Copyright © 2011 IETF Trust and the persons identified as the document authors. All rights reserved.</p>
     
    19441944         is strictly to inform the recipient of valid request methods associated with the resource.
    19451945      </p>
    1946       <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span>  <a href="#header.allow" class="smpl">Allow</a>   = "Allow" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.allow" class="smpl">Allow-v</a>
    1947   <a href="#header.allow" class="smpl">Allow-v</a> = #<a href="#method" class="smpl">Method</a>
     1946      <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.6"></span>  <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method" class="smpl">Method</a>
    19481947</pre><p id="rfc.section.9.1.p.3">Example of use:</p>
    19491948      <div id="rfc.figure.u.9"></div><pre class="text">  Allow: GET, HEAD, PUT
     
    19561955      <h2 id="rfc.section.9.2"><a href="#rfc.section.9.2">9.2</a>&nbsp;<a id="header.expect" href="#header.expect">Expect</a></h2>
    19571956      <p id="rfc.section.9.2.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p>
    1958       <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span>  <a href="#header.expect" class="smpl">Expect</a>       = "Expect" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.expect" class="smpl">Expect-v</a>
    1959   <a href="#header.expect" class="smpl">Expect-v</a>     = 1#<a href="#header.expect" class="smpl">expectation</a>
     1957      <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span>  <a href="#header.expect" class="smpl">Expect</a>       = 1#<a href="#header.expect" class="smpl">expectation</a>
    19601958 
    19611959  <a href="#header.expect" class="smpl">expectation</a>  = "100-continue" / <a href="#header.expect" class="smpl">expectation-extension</a>
     
    19831981      <p id="rfc.section.9.3.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>:
    19841982      </p>
    1985       <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span>  <a href="#header.from" class="smpl">From</a>    = "From" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.from" class="smpl">From-v</a>
    1986   <a href="#header.from" class="smpl">From-v</a>  = <a href="#header.from" class="smpl">mailbox</a>
     1983      <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.11"></span>  <a href="#header.from" class="smpl">From</a>    = <a href="#header.from" class="smpl">mailbox</a>
    19871984 
    19881985  <a href="#header.from" class="smpl">mailbox</a> = &lt;mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>&gt;
     
    20112008      <p id="rfc.section.9.4.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>).
    20122009      </p>
    2013       <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.15"></span><span id="rfc.iref.g.16"></span>  <a href="#header.location" class="smpl">Location</a>       = "Location" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.location" class="smpl">Location-v</a>
    2014   <a href="#header.location" class="smpl">Location-v</a>     = <a href="#abnf.dependencies" class="smpl">URI-reference</a>
     2010      <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.12"></span>  <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a>
    20152011</pre><div id="rfc.figure.u.14"></div>
    20162012      <p>Examples are:</p>  <pre class="text">  Location: http://www.example.org/pub/WWW/People.html#tim
     
    20382034         to trace a request which appears to be failing or looping in mid-chain.
    20392035      </p>
    2040       <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span>  <a href="#header.max-forwards" class="smpl">Max-Forwards</a>   = "Max-Forwards" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.max-forwards" class="smpl">Max-Forwards-v</a>
    2041   <a href="#header.max-forwards" class="smpl">Max-Forwards-v</a> = 1*<a href="#notation" class="smpl">DIGIT</a>
     2036      <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.13"></span>  <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a>
    20422037</pre><p id="rfc.section.9.5.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p>
    20432038      <p id="rfc.section.9.5.p.4">Each recipient of a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the recipient <em class="bcp14">MUST NOT</em> forward the request; instead, it <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, then the forwarded message <em class="bcp14">MUST</em> contain an updated Max-Forwards field with a value decremented by one (1).
     
    20592054         non-HTTP URIs (e.g., FTP).
    20602055      </p>
    2061       <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span>  <a href="#header.referer" class="smpl">Referer</a>        = "Referer" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.referer" class="smpl">Referer-v</a>
    2062   <a href="#header.referer" class="smpl">Referer-v</a>      = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a>
     2056      <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.14"></span>  <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a>
    20632057</pre><p id="rfc.section.9.6.p.5">Example:</p>
    20642058      <div id="rfc.figure.u.18"></div><pre class="text">  Referer: http://www.example.org/hypertext/Overview.html
     
    20732067      </p>
    20742068      <p id="rfc.section.9.7.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p>
    2075       <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span>  <a href="#header.retry-after" class="smpl">Retry-After</a>   = "Retry-After" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.retry-after" class="smpl">Retry-After-v</a>
    2076   <a href="#header.retry-after" class="smpl">Retry-After-v</a> = <a href="#abnf.dependencies" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>
     2069      <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.15"></span>  <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#abnf.dependencies" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>
    20772070</pre><div id="rule.delta-seconds">
    20782071         <p id="rfc.section.9.7.p.4">  Time spans are non-negative decimal integers, representing time in seconds.</p>
    20792072      </div>
    2080       <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.23"></span>  <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>  = 1*<a href="#notation" class="smpl">DIGIT</a>
     2073      <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.16"></span>  <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>  = 1*<a href="#notation" class="smpl">DIGIT</a>
    20812074</pre><p id="rfc.section.9.7.p.6">Two examples of its use are</p>
    20822075      <div id="rfc.figure.u.21"></div><pre class="text">  Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
     
    20902083         identifying the application.
    20912084      </p>
    2092       <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span>  <a href="#header.server" class="smpl">Server</a>         = "Server" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.server" class="smpl">Server-v</a>
    2093   <a href="#header.server" class="smpl">Server-v</a>       = <a href="#abnf.dependencies" class="smpl">product</a>
    2094                    *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )
     2085      <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.17"></span>  <a href="#header.server" class="smpl">Server</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )
    20952086</pre><p id="rfc.section.9.8.p.4">Example:</p>
    20962087      <div id="rfc.figure.u.23"></div><pre class="text">  Server: CERN/3.0 libwww/2.17
     
    21222113         doing so makes the field value more difficult to parse.
    21232114      </p>
    2124       <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span>  <a href="#header.user-agent" class="smpl">User-Agent</a>     = "User-Agent" ":" <a href="#core.rules" class="smpl">OWS</a> <a href="#header.user-agent" class="smpl">User-Agent-v</a>
    2125   <a href="#header.user-agent" class="smpl">User-Agent-v</a>   = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )
     2115      <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.18"></span>  <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )
    21262116</pre><p id="rfc.section.9.9.p.7">Example:</p>
    21272117      <div id="rfc.figure.u.25"></div><pre class="text">  User-Agent: CERN-LineMode/2.15 libwww/2.17b3
     
    27082698      <p id="rfc.section.A.p.7">Define status 426 (Upgrade Required) (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.4"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#status.426" id="rfc.xref.status.426.3" title="426 Upgrade Required">Section&nbsp;8.4.19</a>)
    27092699      </p>
    2710       <p id="rfc.section.A.p.8">Reclassify "Allow" as response header field, removing the option to specify it in a PUT request. Relax the server requirement
     2700      <p id="rfc.section.A.p.8">Change ABNF productions for header fields to only define the field value. (<a href="#header.fields" title="Header Field Definitions">Section&nbsp;9</a>)
     2701      </p>
     2702      <p id="rfc.section.A.p.9">Reclassify "Allow" as response header field, removing the option to specify it in a PUT request. Relax the server requirement
    27112703         on the contents of the Allow header field and remove requirement on clients to always trust the header field value. (<a href="#header.allow" id="rfc.xref.header.allow.4" title="Allow">Section&nbsp;9.1</a>)
    27122704      </p>
    2713       <p id="rfc.section.A.p.9">Correct syntax of Location header field to allow URI references (including relative references and fragments), as referred
     2705      <p id="rfc.section.A.p.10">Correct syntax of Location header field to allow URI references (including relative references and fragments), as referred
    27142706         symbol "absoluteURI" wasn't what was expected, and add some clarifications as to when use of fragments would not be appropriate.
    27152707         (<a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section&nbsp;9.4</a>)
    27162708      </p>
    2717       <p id="rfc.section.A.p.10">Restrict Max-Forwards header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section&nbsp;9.5</a>)
    2718       </p>
    2719       <p id="rfc.section.A.p.11">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section&nbsp;9.6</a>)
    2720       </p>
    2721       <p id="rfc.section.A.p.12">In the description of the Server header field, the Via field was described as a SHOULD. The requirement was and is stated
     2709      <p id="rfc.section.A.p.11">Restrict Max-Forwards header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section&nbsp;9.5</a>)
     2710      </p>
     2711      <p id="rfc.section.A.p.12">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section&nbsp;9.6</a>)
     2712      </p>
     2713      <p id="rfc.section.A.p.13">In the description of the Server header field, the Via field was described as a SHOULD. The requirement was and is stated
    27222714         correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 9.9</a> of <a href="#Part1" id="rfc.xref.Part1.36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section&nbsp;9.8</a>)
    27232715      </p>
    27242716      <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a>&nbsp;<a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1>
    2725       <div id="rfc.figure.u.26"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = "Allow:" OWS Allow-v
    2726 <a href="#header.allow" class="smpl">Allow-v</a> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
     2717      <div id="rfc.figure.u.26"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
    27272718
    2728 <a href="#header.expect" class="smpl">Expect</a> = "Expect:" OWS Expect-v
    2729 <a href="#header.expect" class="smpl">Expect-v</a> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     2719<a href="#header.expect" class="smpl">Expect</a> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
    27302720
    2731 <a href="#header.from" class="smpl">From</a> = "From:" OWS From-v
    2732 <a href="#header.from" class="smpl">From-v</a> = mailbox
     2721<a href="#header.from" class="smpl">From</a> = mailbox
    27332722
    27342723<a href="#abnf.dependencies" class="smpl">HTTP-date</a> = &lt;HTTP-date, defined in [Part1], Section 6.1&gt;
    27352724
    2736 <a href="#header.location" class="smpl">Location</a> = "Location:" OWS Location-v
    2737 <a href="#header.location" class="smpl">Location-v</a> = URI-reference
     2725<a href="#header.location" class="smpl">Location</a> = URI-reference
    27382726
    2739 <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = "Max-Forwards:" OWS Max-Forwards-v
    2740 <a href="#header.max-forwards" class="smpl">Max-Forwards-v</a> = 1*DIGIT
     2727<a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*DIGIT
    27412728<a href="#method" class="smpl">Method</a> = token
    27422729
     
    27452732<a href="#core.rules" class="smpl">RWS</a> = &lt;RWS, defined in [Part1], Section 1.2.2&gt;
    27462733<a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> = *( WSP / VCHAR / obs-text )
    2747 <a href="#header.referer" class="smpl">Referer</a> = "Referer:" OWS Referer-v
    2748 <a href="#header.referer" class="smpl">Referer-v</a> = absolute-URI / partial-URI
    2749 <a href="#header.retry-after" class="smpl">Retry-After</a> = "Retry-After:" OWS Retry-After-v
    2750 <a href="#header.retry-after" class="smpl">Retry-After-v</a> = HTTP-date / delta-seconds
     2734<a href="#header.referer" class="smpl">Referer</a> = absolute-URI / partial-URI
     2735<a href="#header.retry-after" class="smpl">Retry-After</a> = HTTP-date / delta-seconds
    27512736
    2752 <a href="#header.server" class="smpl">Server</a> = "Server:" OWS Server-v
    2753 <a href="#header.server" class="smpl">Server-v</a> = product *( RWS ( product / comment ) )
     2737<a href="#header.server" class="smpl">Server</a> = product *( RWS ( product / comment ) )
    27542738<a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3DIGIT
    27552739
    27562740<a href="#abnf.dependencies" class="smpl">URI-reference</a> = &lt;URI-reference, defined in [Part1], Section 2.6&gt;
    2757 <a href="#header.user-agent" class="smpl">User-Agent</a> = "User-Agent:" OWS User-Agent-v
    2758 <a href="#header.user-agent" class="smpl">User-Agent-v</a> = product *( RWS ( product / comment ) )
     2741<a href="#header.user-agent" class="smpl">User-Agent</a> = product *( RWS ( product / comment ) )
    27592742
    27602743<a href="#abnf.dependencies" class="smpl">absolute-URI</a> = &lt;absolute-URI, defined in [Part1], Section 2.6&gt;
     
    30313014      </ul>
    30323015      <h2 id="rfc.section.C.15"><a href="#rfc.section.C.15">C.15</a>&nbsp;<a id="changes.since.13" href="#changes.since.13">Since draft-ietf-httpbis-p2-semantics-13</a></h2>
    3033       <p id="rfc.section.C.15.p.1">None yet.</p>
     3016      <p id="rfc.section.C.15.p.1">Closed issues: </p>
     3017      <ul>
     3018         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/276">http://tools.ietf.org/wg/httpbis/trac/ticket/276</a>&gt;: "untangle ABNFs for header fields"
     3019         </li>
     3020      </ul>
    30343021      <h1 id="rfc.index"><a href="#rfc.index">Index</a></h1>
    30353022      <p class="noprint"><a href="#rfc.index.1">1</a> <a href="#rfc.index.2">2</a> <a href="#rfc.index.3">3</a> <a href="#rfc.index.4">4</a> <a href="#rfc.index.5">5</a> <a href="#rfc.index.A">A</a> <a href="#rfc.index.C">C</a> <a href="#rfc.index.D">D</a> <a href="#rfc.index.E">E</a> <a href="#rfc.index.F">F</a> <a href="#rfc.index.G">G</a> <a href="#rfc.index.H">H</a> <a href="#rfc.index.I">I</a> <a href="#rfc.index.L">L</a> <a href="#rfc.index.M">M</a> <a href="#rfc.index.O">O</a> <a href="#rfc.index.P">P</a> <a href="#rfc.index.R">R</a> <a href="#rfc.index.S">S</a> <a href="#rfc.index.T">T</a> <a href="#rfc.index.U">U</a>
     
    31193106                     <ul>
    31203107                        <li><tt>Allow</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.6"><b>9.1</b></a></li>
    3121                         <li><tt>Allow-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.7"><b>9.1</b></a></li>
    3122                         <li><tt>delta-seconds</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.23"><b>9.7</b></a></li>
    3123                         <li><tt>Expect</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.8"><b>9.2</b></a></li>
    3124                         <li><tt>expect-params</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.12"><b>9.2</b></a></li>
    3125                         <li><tt>Expect-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.9"><b>9.2</b></a></li>
    3126                         <li><tt>expectation</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.10"><b>9.2</b></a></li>
    3127                         <li><tt>expectation-extension</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.11"><b>9.2</b></a></li>
     3108                        <li><tt>delta-seconds</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.16"><b>9.7</b></a></li>
     3109                        <li><tt>Expect</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.7"><b>9.2</b></a></li>
     3110                        <li><tt>expect-params</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.10"><b>9.2</b></a></li>
     3111                        <li><tt>expectation</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.8"><b>9.2</b></a></li>
     3112                        <li><tt>expectation-extension</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.9"><b>9.2</b></a></li>
    31283113                        <li><tt>extension-code</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.3"><b>4</b></a></li>
    3129                         <li><tt>From</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.13"><b>9.3</b></a></li>
    3130                         <li><tt>From-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.14"><b>9.3</b></a></li>
    3131                         <li><tt>Location</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.15"><b>9.4</b></a></li>
    3132                         <li><tt>Location-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.16"><b>9.4</b></a></li>
    3133                         <li><tt>Max-Forwards</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.17"><b>9.5</b></a></li>
    3134                         <li><tt>Max-Forwards-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>9.5</b></a></li>
     3114                        <li><tt>From</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.11"><b>9.3</b></a></li>
     3115                        <li><tt>Location</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.12"><b>9.4</b></a></li>
     3116                        <li><tt>Max-Forwards</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.13"><b>9.5</b></a></li>
    31353117                        <li><tt>Method</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.1"><b>2</b></a></li>
    31363118                        <li><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.4"><b>4</b></a></li>
    3137                         <li><tt>Referer</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.19"><b>9.6</b></a></li>
    3138                         <li><tt>Referer-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.20"><b>9.6</b></a></li>
    3139                         <li><tt>Retry-After</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.21"><b>9.7</b></a></li>
    3140                         <li><tt>Retry-After-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.22"><b>9.7</b></a></li>
    3141                         <li><tt>Server</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.24"><b>9.8</b></a></li>
    3142                         <li><tt>Server-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.25"><b>9.8</b></a></li>
     3119                        <li><tt>Referer</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.14"><b>9.6</b></a></li>
     3120                        <li><tt>Retry-After</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.15"><b>9.7</b></a></li>
     3121                        <li><tt>Server</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.17"><b>9.8</b></a></li>
    31433122                        <li><tt>Status-Code</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.2"><b>4</b></a></li>
    3144                         <li><tt>User-Agent</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.26"><b>9.9</b></a></li>
    3145                         <li><tt>User-Agent-v</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.27"><b>9.9</b></a></li>
     3123                        <li><tt>User-Agent</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>9.9</b></a></li>
    31463124                     </ul>
    31473125                  </li>
  • draft-ietf-httpbis/latest/p2-semantics.xml

    r1228 r1235  
    20992099  <iref primary="true" item="Header Fields" subitem="Allow" x:for-anchor=""/>
    21002100  <x:anchor-alias value="Allow"/>
    2101   <x:anchor-alias value="Allow-v"/>
    21022101<t>
    21032102   The "Allow" header field lists the set of methods advertised as
     
    21052104   inform the recipient of valid request methods associated with the resource.
    21062105</t>
    2107 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Allow"/><iref primary="true" item="Grammar" subitem="Allow-v"/>
    2108   <x:ref>Allow</x:ref>   = "Allow" ":" <x:ref>OWS</x:ref> <x:ref>Allow-v</x:ref>
    2109   <x:ref>Allow-v</x:ref> = #<x:ref>Method</x:ref>
     2106<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Allow"/>
     2107  <x:ref>Allow</x:ref> = #<x:ref>Method</x:ref>
    21102108</artwork></figure>
    21112109<t>
     
    21302128  <iref primary="true" item="Header Fields" subitem="Expect" x:for-anchor=""/>
    21312129  <x:anchor-alias value="Expect"/>
    2132   <x:anchor-alias value="Expect-v"/>
    21332130  <x:anchor-alias value="expectation"/>
    21342131  <x:anchor-alias value="expectation-extension"/>
     
    21382135   server behaviors are required by the client.
    21392136</t>
    2140 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Expect"/><iref primary="true" item="Grammar" subitem="Expect-v"/><iref primary="true" item="Grammar" subitem="expectation"/><iref primary="true" item="Grammar" subitem="expectation-extension"/><iref primary="true" item="Grammar" subitem="expect-params"/>
    2141   <x:ref>Expect</x:ref>       = "Expect" ":" <x:ref>OWS</x:ref> <x:ref>Expect-v</x:ref>
    2142   <x:ref>Expect-v</x:ref>     = 1#<x:ref>expectation</x:ref>
     2137<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Expect"/><iref primary="true" item="Grammar" subitem="expectation"/><iref primary="true" item="Grammar" subitem="expectation-extension"/><iref primary="true" item="Grammar" subitem="expect-params"/>
     2138  <x:ref>Expect</x:ref>       = 1#<x:ref>expectation</x:ref>
    21432139 
    21442140  <x:ref>expectation</x:ref>  = "100-continue" / <x:ref>expectation-extension</x:ref>
     
    21862182  <iref primary="true" item="Header Fields" subitem="From" x:for-anchor=""/>
    21872183  <x:anchor-alias value="From"/>
    2188   <x:anchor-alias value="From-v"/>
    21892184  <x:anchor-alias value="mailbox"/>
    21902185<t>
     
    21942189   in <xref x:sec="3.4" x:fmt="of" target="RFC5322"/>:
    21952190</t>
    2196 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="From"/><iref primary="true" item="Grammar" subitem="From-v"/>
    2197   <x:ref>From</x:ref>    = "From" ":" <x:ref>OWS</x:ref> <x:ref>From-v</x:ref>
    2198   <x:ref>From-v</x:ref>  = <x:ref>mailbox</x:ref>
     2191<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="From"/>
     2192  <x:ref>From</x:ref>    = <x:ref>mailbox</x:ref>
    21992193 
    22002194  <x:ref>mailbox</x:ref> = &lt;mailbox, defined in <xref x:sec="3.4" x:fmt="," target="RFC5322"/>&gt;
     
    22352229  <iref primary="true" item="Header Fields" subitem="Location" x:for-anchor=""/>
    22362230  <x:anchor-alias value="Location"/>
    2237   <x:anchor-alias value="Location-v"/>
    22382231<t>
    22392232   The "Location" header field is used to identify a newly created
     
    22532246   URI (<xref target="RFC3986" x:fmt="," x:sec="5"/>).
    22542247</t>
    2255 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Location"/><iref primary="true" item="Grammar" subitem="Location-v"/>
    2256   <x:ref>Location</x:ref>       = "Location" ":" <x:ref>OWS</x:ref> <x:ref>Location-v</x:ref>
    2257   <x:ref>Location-v</x:ref>     = <x:ref>URI-reference</x:ref>
     2248<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Location"/>
     2249  <x:ref>Location</x:ref> = <x:ref>URI-reference</x:ref>
    22582250</artwork></figure>
    22592251<figure>
     
    22972289  <iref primary="true" item="Header Fields" subitem="Max-Forwards" x:for-anchor=""/>
    22982290  <x:anchor-alias value="Max-Forwards"/>
    2299   <x:anchor-alias value="Max-Forwards-v"/>
    23002291<t>
    23012292   The "Max-Forwards" header field provides a mechanism with the
     
    23052296   trace a request which appears to be failing or looping in mid-chain.
    23062297</t>
    2307 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Max-Forwards"/><iref primary="true" item="Grammar" subitem="Max-Forwards-v"/>
    2308   <x:ref>Max-Forwards</x:ref>   = "Max-Forwards" ":" <x:ref>OWS</x:ref> <x:ref>Max-Forwards-v</x:ref>
    2309   <x:ref>Max-Forwards-v</x:ref> = 1*<x:ref>DIGIT</x:ref>
     2298<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Max-Forwards"/>
     2299  <x:ref>Max-Forwards</x:ref> = 1*<x:ref>DIGIT</x:ref>
    23102300</artwork></figure>
    23112301<t>
     
    23322322  <iref primary="true" item="Header Fields" subitem="Referer" x:for-anchor=""/>
    23332323  <x:anchor-alias value="Referer"/>
    2334   <x:anchor-alias value="Referer-v"/>
    23352324<t>
    23362325   The "Referer" [sic] header field allows the client to specify the
     
    23522341   requirement does not apply to sources with non-HTTP URIs (e.g., FTP).
    23532342</t>
    2354 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Referer"/><iref primary="true" item="Grammar" subitem="Referer-v"/>
    2355   <x:ref>Referer</x:ref>        = "Referer" ":" <x:ref>OWS</x:ref> <x:ref>Referer-v</x:ref>
    2356   <x:ref>Referer-v</x:ref>      = <x:ref>absolute-URI</x:ref> / <x:ref>partial-URI</x:ref>
     2343<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Referer"/>
     2344  <x:ref>Referer</x:ref> = <x:ref>absolute-URI</x:ref> / <x:ref>partial-URI</x:ref>
    23572345</artwork></figure>
    23582346<t>
     
    23732361  <iref primary="true" item="Header Fields" subitem="Retry-After" x:for-anchor=""/>
    23742362  <x:anchor-alias value="Retry-After"/>
    2375   <x:anchor-alias value="Retry-After-v"/>
    23762363<t>
    23772364   The header "Retry-After" field can be used with a 503 (Service
     
    23852372   of seconds (in decimal) after the time of the response.
    23862373</t>
    2387 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Retry-After"/><iref primary="true" item="Grammar" subitem="Retry-After-v"/>
    2388   <x:ref>Retry-After</x:ref>   = "Retry-After" ":" <x:ref>OWS</x:ref> <x:ref>Retry-After-v</x:ref>
    2389   <x:ref>Retry-After-v</x:ref> = <x:ref>HTTP-date</x:ref> / <x:ref>delta-seconds</x:ref>
     2374<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Retry-After"/>
     2375  <x:ref>Retry-After</x:ref> = <x:ref>HTTP-date</x:ref> / <x:ref>delta-seconds</x:ref>
    23902376</artwork></figure>
    23912377<t anchor="rule.delta-seconds">
     
    24132399  <iref primary="true" item="Header Fields" subitem="Server" x:for-anchor=""/>
    24142400  <x:anchor-alias value="Server"/>
    2415   <x:anchor-alias value="Server-v"/>
    24162401<t>
    24172402   The "Server" header field contains information about the
     
    24242409   for identifying the application.
    24252410</t>
    2426 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Server"/><iref primary="true" item="Grammar" subitem="Server-v"/>
    2427   <x:ref>Server</x:ref>         = "Server" ":" <x:ref>OWS</x:ref> <x:ref>Server-v</x:ref>
    2428   <x:ref>Server-v</x:ref>       = <x:ref>product</x:ref>
    2429                    *( <x:ref>RWS</x:ref> ( <x:ref>product</x:ref> / <x:ref>comment</x:ref> ) )
     2411<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Server"/>
     2412  <x:ref>Server</x:ref> = <x:ref>product</x:ref> *( <x:ref>RWS</x:ref> ( <x:ref>product</x:ref> / <x:ref>comment</x:ref> ) )
    24302413</artwork></figure>
    24312414<t>
     
    24552438  <iref primary="true" item="Header Fields" subitem="User-Agent" x:for-anchor=""/>
    24562439  <x:anchor-alias value="User-Agent"/>
    2457   <x:anchor-alias value="User-Agent-v"/>
    24582440<t>
    24592441   The "User-Agent" header field contains information about the user
     
    24872469   difficult to parse.
    24882470</t>
    2489 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="User-Agent"/><iref primary="true" item="Grammar" subitem="User-Agent-v"/>
    2490   <x:ref>User-Agent</x:ref>     = "User-Agent" ":" <x:ref>OWS</x:ref> <x:ref>User-Agent-v</x:ref>
    2491   <x:ref>User-Agent-v</x:ref>   = <x:ref>product</x:ref> *( <x:ref>RWS</x:ref> ( <x:ref>product</x:ref> / <x:ref>comment</x:ref> ) )
     2471<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="User-Agent"/>
     2472  <x:ref>User-Agent</x:ref> = <x:ref>product</x:ref> *( <x:ref>RWS</x:ref> ( <x:ref>product</x:ref> / <x:ref>comment</x:ref> ) )
    24922473</artwork></figure>
    24932474<t>
     
    35163497</t>
    35173498<t>
     3499  Change ABNF productions for header fields to only define the field value.
     3500  (<xref target="header.fields"/>)
     3501</t>
     3502<t>
    35183503  Reclassify "Allow" as response header field, removing the option to
    35193504  specify it in a PUT request.
     
    35503535<figure>
    35513536<artwork type="abnf" name="p2-semantics.parsed-abnf">
    3552 <x:ref>Allow</x:ref> = "Allow:" OWS Allow-v
    3553 <x:ref>Allow-v</x:ref> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
    3554 
    3555 <x:ref>Expect</x:ref> = "Expect:" OWS Expect-v
    3556 <x:ref>Expect-v</x:ref> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
    3557 
    3558 <x:ref>From</x:ref> = "From:" OWS From-v
    3559 <x:ref>From-v</x:ref> = mailbox
     3537<x:ref>Allow</x:ref> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ]
     3538
     3539<x:ref>Expect</x:ref> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     3540
     3541<x:ref>From</x:ref> = mailbox
    35603542
    35613543<x:ref>HTTP-date</x:ref> = &lt;HTTP-date, defined in [Part1], Section 6.1&gt;
    35623544
    3563 <x:ref>Location</x:ref> = "Location:" OWS Location-v
    3564 <x:ref>Location-v</x:ref> = URI-reference
    3565 
    3566 <x:ref>Max-Forwards</x:ref> = "Max-Forwards:" OWS Max-Forwards-v
    3567 <x:ref>Max-Forwards-v</x:ref> = 1*DIGIT
     3545<x:ref>Location</x:ref> = URI-reference
     3546
     3547<x:ref>Max-Forwards</x:ref> = 1*DIGIT
    35683548<x:ref>Method</x:ref> = token
    35693549
     
    35723552<x:ref>RWS</x:ref> = &lt;RWS, defined in [Part1], Section 1.2.2&gt;
    35733553<x:ref>Reason-Phrase</x:ref> = *( WSP / VCHAR / obs-text )
    3574 <x:ref>Referer</x:ref> = "Referer:" OWS Referer-v
    3575 <x:ref>Referer-v</x:ref> = absolute-URI / partial-URI
    3576 <x:ref>Retry-After</x:ref> = "Retry-After:" OWS Retry-After-v
    3577 <x:ref>Retry-After-v</x:ref> = HTTP-date / delta-seconds
    3578 
    3579 <x:ref>Server</x:ref> = "Server:" OWS Server-v
    3580 <x:ref>Server-v</x:ref> = product *( RWS ( product / comment ) )
     3554<x:ref>Referer</x:ref> = absolute-URI / partial-URI
     3555<x:ref>Retry-After</x:ref> = HTTP-date / delta-seconds
     3556
     3557<x:ref>Server</x:ref> = product *( RWS ( product / comment ) )
    35813558<x:ref>Status-Code</x:ref> = 3DIGIT
    35823559
    35833560<x:ref>URI-reference</x:ref> = &lt;URI-reference, defined in [Part1], Section 2.6&gt;
    3584 <x:ref>User-Agent</x:ref> = "User-Agent:" OWS User-Agent-v
    3585 <x:ref>User-Agent-v</x:ref> = product *( RWS ( product / comment ) )
     3561<x:ref>User-Agent</x:ref> = product *( RWS ( product / comment ) )
    35863562
    35873563<x:ref>absolute-URI</x:ref> = &lt;absolute-URI, defined in [Part1], Section 2.6&gt;
     
    40964072<section title="Since draft-ietf-httpbis-p2-semantics-13" anchor="changes.since.13">
    40974073<t>
    4098   None yet.
     4074  Closed issues:
     4075  <list style="symbols">
     4076    <t>
     4077      <eref target="http://tools.ietf.org/wg/httpbis/trac/ticket/276"/>:
     4078      "untangle ABNFs for header fields"
     4079    </t>
     4080  </list>
    40994081</t>
    41004082</section>
Note: See TracChangeset for help on using the changeset viewer.