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)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 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.