Ignore:
Timestamp:
Nov 22, 2008, 10:21:16 AM (11 years ago)
Author:
julian.reschke@…
Message:

ABNF appendix: group by first letter, add internal links to definitions (related to #36)

File:
1 edited

Legend:

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

    r424 r427  
    477477         <tr>
    478478            <td class="header left"></td>
    479             <td class="header right">November 21, 2008</td>
     479            <td class="header right">November 22, 2008</td>
    480480         </tr>
    481481      </table>
     
    26252625      </dl>
    26262626      <h1 id="rfc.section.D"><a href="#rfc.section.D">D.</a>&nbsp;<a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1>
    2627       <div id="rfc.figure.u.64"></div> <pre class="inline">BWS = OWS
    2628 Cache-Control = &lt;Cache-Control, defined in [Part6], Section 15.4&gt;
    2629 Chunked-Body = *chunk last-chunk trailer-part CRLF
    2630 Connection = "Connection:" OWS Connection-v
    2631 Connection-v = *( "," OWS ) connection-token *( OWS "," [ OWS
     2627      <div id="rfc.figure.u.64"></div> <pre class="inline"><a href="#rule.whitespace" class="smpl">BWS</a> = OWS
     2628
     2629<a href="#abnf.dependencies" class="smpl">Cache-Control</a> = &lt;Cache-Control, defined in [Part6], Section 15.4&gt;
     2630<a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *chunk last-chunk trailer-part CRLF
     2631<a href="#header.connection" class="smpl">Connection</a> = "Connection:" OWS Connection-v
     2632<a href="#header.connection" class="smpl">Connection-v</a> = *( "," OWS ) connection-token *( OWS "," [ OWS
    26322633 connection-token ] )
    2633 Content-Length = "Content-Length:" OWS 1*Content-Length-v
    2634 Content-Length-v = 1*DIGIT
    2635 Date = "Date:" OWS Date-v
    2636 Date-v = HTTP-date
     2634<a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length:" OWS 1*Content-Length-v
     2635<a href="#header.content-length" class="smpl">Content-Length-v</a> = 1*DIGIT
     2636
     2637<a href="#header.date" class="smpl">Date</a> = "Date:" OWS Date-v
     2638<a href="#header.date" class="smpl">Date-v</a> = HTTP-date
     2639
    26372640GMT = %x47.4D.54
    2638 HTTP-Prot-Name = %x48.54.54.50
    2639 HTTP-Version = HTTP-Prot-Name "/" 1*DIGIT "." 1*DIGIT
    2640 HTTP-date = rfc1123-date / obsolete-date
    2641 HTTP-message = Request / Response
    2642 Host = "Host:" OWS Host-v
    2643 Host-v = uri-host [ ":" port ]
    2644 Method = token
    2645 OWS = *( [ obs-fold ] WSP )
    2646 Pragma = &lt;Pragma, defined in [Part6], Section 15.4&gt;
    2647 RWS = 1*( [ obs-fold ] WSP )
    2648 Reason-Phrase = *( WSP / VCHAR / obs-text )
    2649 Request = Request-Line *( ( general-header / request-header /
     2641
     2642<a href="#http.version" class="smpl">HTTP-Prot-Name</a> = %x48.54.54.50
     2643<a href="#http.version" class="smpl">HTTP-Version</a> = HTTP-Prot-Name "/" 1*DIGIT "." 1*DIGIT
     2644<a href="#full.date" class="smpl">HTTP-date</a> = rfc1123-date / obsolete-date
     2645<a href="#message.types" class="smpl">HTTP-message</a> = Request / Response
     2646<a href="#header.host" class="smpl">Host</a> = "Host:" OWS Host-v
     2647<a href="#header.host" class="smpl">Host-v</a> = uri-host [ ":" port ]
     2648
     2649<a href="#method" class="smpl">Method</a> = token
     2650
     2651<a href="#rule.whitespace" class="smpl">OWS</a> = *( [ obs-fold ] WSP )
     2652
     2653<a href="#abnf.dependencies" class="smpl">Pragma</a> = &lt;Pragma, defined in [Part6], Section 15.4&gt;
     2654
     2655<a href="#rule.whitespace" class="smpl">RWS</a> = 1*( [ obs-fold ] WSP )
     2656<a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> = *( WSP / VCHAR / obs-text )
     2657<a href="#request" class="smpl">Request</a> = Request-Line *( ( general-header / request-header /
    26502658 entity-header ) CRLF ) CRLF [ message-body ]
    2651 Request-Line = Method SP request-target SP HTTP-Version CRLF
    2652 Response = Status-Line *( ( general-header / response-header /
     2659<a href="#request-line" class="smpl">Request-Line</a> = Method SP request-target SP HTTP-Version CRLF
     2660<a href="#response" class="smpl">Response</a> = Status-Line *( ( general-header / response-header /
    26532661 entity-header ) CRLF ) CRLF [ message-body ]
    2654 Status-Code = 3DIGIT
    2655 Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
    2656 TE = "TE:" OWS TE-v
    2657 TE-v = [ ( "," / t-codings ) *( OWS "," [ OWS t-codings ] ) ]
    2658 Trailer = "Trailer:" OWS Trailer-v
    2659 Trailer-v = *( "," OWS ) field-name *( OWS "," [ OWS field-name ] )
    2660 Transfer-Encoding = "Transfer-Encoding:" OWS Transfer-Encoding-v
    2661 Transfer-Encoding-v = *( "," OWS ) transfer-coding *( OWS "," [ OWS
     2662<a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3DIGIT
     2663<a href="#status-line" class="smpl">Status-Line</a> = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
     2664
     2665<a href="#header.te" class="smpl">TE</a> = "TE:" OWS TE-v
     2666<a href="#header.te" class="smpl">TE-v</a> = [ ( "," / t-codings ) *( OWS "," [ OWS t-codings ] ) ]
     2667<a href="#header.trailer" class="smpl">Trailer</a> = "Trailer:" OWS Trailer-v
     2668<a href="#header.trailer" class="smpl">Trailer-v</a> = *( "," OWS ) field-name *( OWS "," [ OWS field-name ] )
     2669<a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding:" OWS Transfer-Encoding-v
     2670<a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> = *( "," OWS ) transfer-coding *( OWS "," [ OWS
    26622671 transfer-coding ] )
    2663 URI = &lt;URI, defined in [RFC3986], Section 3&gt;
    2664 URI-reference = &lt;URI-reference, defined in [RFC3986], Section 4.1&gt;
    2665 Upgrade = "Upgrade:" OWS Upgrade-v
    2666 Upgrade-v = *( "," OWS ) product *( OWS "," [ OWS product ] )
    2667 Via = "Via:" OWS Via-v
    2668 Via-v = *( "," OWS ) received-protocol RWS received-by [ RWS comment
     2672<a href="#uri" class="smpl">URI</a> = &lt;URI, defined in [RFC3986], Section 3&gt;
     2673<a href="#uri" class="smpl">URI-reference</a> = &lt;URI-reference, defined in [RFC3986], Section 4.1&gt;
     2674<a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade:" OWS Upgrade-v
     2675<a href="#header.upgrade" class="smpl">Upgrade-v</a> = *( "," OWS ) product *( OWS "," [ OWS product ] )
     2676
     2677<a href="#header.via" class="smpl">Via</a> = "Via:" OWS Via-v
     2678<a href="#header.via" class="smpl">Via-v</a> = *( "," OWS ) received-protocol RWS received-by [ RWS comment
    26692679 ] *( OWS "," [ OWS received-protocol RWS received-by [ RWS comment ]
    26702680 ] )
    2671 Warning = &lt;Warning, defined in [Part6], Section 15.6&gt;
    2672 absolute-URI = &lt;absolute-URI, defined in [RFC3986], Section 4.3&gt;
    2673 accept-params = &lt;accept-params, defined in [Part3], Section 5.1&gt;
    2674 asctime-date = wkday SP date3 SP time SP 4DIGIT
    2675 attribute = token
    2676 authority = &lt;authority, defined in [RFC3986], Section 3.2&gt;
    2677 chunk = chunk-size *WSP [ chunk-ext ] CRLF chunk-data CRLF
    2678 chunk-data = 1*OCTET
    2679 chunk-ext = *( ";" *WSP chunk-ext-name [ "=" chunk-ext-val ] *WSP )
    2680 chunk-ext-name = token
    2681 chunk-ext-val = token / quoted-string
    2682 chunk-size = 1*HEXDIG
    2683 comment = "(" *( ctext / quoted-pair / comment ) ")"
    2684 connection-token = token
    2685 ctext = *( OWS / %x21-27 / %x2A-7E / obs-text )
    2686 date1 = 2DIGIT SP month SP 4DIGIT
    2687 date2 = 2DIGIT "-" month "-" 2DIGIT
    2688 date3 = month SP ( 2DIGIT / ( SP DIGIT ) )
    2689 entity-body = &lt;entity-body, defined in [Part3], Section 3.2&gt;
    2690 entity-header = &lt;entity-header, defined in [Part3], Section 3.1&gt;
    2691 field-content = *( WSP / VCHAR / obs-text )
    2692 field-name = token
    2693 field-value = *( field-content / OWS )
    2694 fragment = &lt;fragment, defined in [RFC3986], Section 3.5&gt;
    2695 general-header = Cache-Control / Connection / Date / Pragma / Trailer
     2681<a href="#abnf.dependencies" class="smpl">Warning</a> = &lt;Warning, defined in [Part6], Section 15.6&gt;
     2682
     2683<a href="#uri" class="smpl">absolute-URI</a> = &lt;absolute-URI, defined in [RFC3986], Section 4.3&gt;
     2684<a href="#abnf.dependencies" class="smpl">accept-params</a> = &lt;accept-params, defined in [Part3], Section 5.1&gt;
     2685<a href="#full.date" class="smpl">asctime-date</a> = wkday SP date3 SP time SP 4DIGIT
     2686<a href="#rule.parameter" class="smpl">attribute</a> = token
     2687<a href="#uri" class="smpl">authority</a> = &lt;authority, defined in [RFC3986], Section 3.2&gt;
     2688
     2689<a href="#chunked.transfer.encoding" class="smpl">chunk</a> = chunk-size *WSP [ chunk-ext ] CRLF chunk-data CRLF
     2690<a href="#chunked.transfer.encoding" class="smpl">chunk-data</a> = 1*OCTET
     2691<a href="#chunked.transfer.encoding" class="smpl">chunk-ext</a> = *( ";" *WSP chunk-ext-name [ "=" chunk-ext-val ] *WSP )
     2692<a href="#chunked.transfer.encoding" class="smpl">chunk-ext-name</a> = token
     2693<a href="#chunked.transfer.encoding" class="smpl">chunk-ext-val</a> = token / quoted-string
     2694<a href="#chunked.transfer.encoding" class="smpl">chunk-size</a> = 1*HEXDIG
     2695<a href="#rule.comment" class="smpl">comment</a> = "(" *( ctext / quoted-pair / comment ) ")"
     2696<a href="#header.connection" class="smpl">connection-token</a> = token
     2697<a href="#rule.comment" class="smpl">ctext</a> = *( OWS / %x21-27 / %x2A-7E / obs-text )
     2698
     2699<a href="#full.date" class="smpl">date1</a> = 2DIGIT SP month SP 4DIGIT
     2700<a href="#full.date" class="smpl">date2</a> = 2DIGIT "-" month "-" 2DIGIT
     2701<a href="#full.date" class="smpl">date3</a> = month SP ( 2DIGIT / ( SP DIGIT ) )
     2702
     2703<a href="#abnf.dependencies" class="smpl">entity-body</a> = &lt;entity-body, defined in [Part3], Section 3.2&gt;
     2704<a href="#abnf.dependencies" class="smpl">entity-header</a> = &lt;entity-header, defined in [Part3], Section 3.1&gt;
     2705
     2706<a href="#message.headers" class="smpl">field-content</a> = *( WSP / VCHAR / obs-text )
     2707<a href="#message.headers" class="smpl">field-name</a> = token
     2708<a href="#message.headers" class="smpl">field-value</a> = *( field-content / OWS )
     2709<a href="#uri" class="smpl">fragment</a> = &lt;fragment, defined in [RFC3986], Section 3.5&gt;
     2710
     2711<a href="#general.header.fields" class="smpl">general-header</a> = Cache-Control / Connection / Date / Pragma / Trailer
    26962712 / Transfer-Encoding / Upgrade / Via / Warning
    2697 generic-message = start-line *( message-header CRLF ) CRLF [
     2713<a href="#message.types" class="smpl">generic-message</a> = start-line *( message-header CRLF ) CRLF [
    26982714 message-body ]
    2699 http-URI = "http://" authority path-abempty [ "?" query ]
     2715<a href="#http.uri" class="smpl">http-URI</a> = "http://" authority path-abempty [ "?" query ]
     2716
    27002717l-Fri = %x46.72.69.64.61.79
    27012718l-Mon = %x4D.6F.6E.64.61.79
     
    27052722l-Tue = %x54.75.65.73.64.61.79
    27062723l-Wed = %x57.65.64.6E.65.73.64.61.79
    2707 last-chunk = 1*"0" *WSP [ chunk-ext ] CRLF
    2708 message-body = entity-body / &lt;entity-body encoded as per
     2724<a href="#chunked.transfer.encoding" class="smpl">last-chunk</a> = 1*"0" *WSP [ chunk-ext ] CRLF
     2725
     2726<a href="#message.body" class="smpl">message-body</a> = entity-body / &lt;entity-body encoded as per
    27092727 Transfer-Encoding&gt;
    2710 message-header = field-name ":" OWS [ field-value ] OWS
    2711 month = s-Jan / s-Feb / s-Mar / s-Apr / s-May / s-Jun / s-Jul / s-Aug
     2728<a href="#message.headers" class="smpl">message-header</a> = field-name ":" OWS [ field-value ] OWS
     2729<a href="#full.date" class="smpl">month</a> = s-Jan / s-Feb / s-Mar / s-Apr / s-May / s-Jun / s-Jul / s-Aug
    27122730 / s-Sep / s-Oct / s-Nov / s-Dec
    2713 obs-fold = CRLF
    2714 obs-text = %x80-FF
    2715 obsolete-date = rfc850-date / asctime-date
    2716 parameter = attribute BWS "=" BWS value
    2717 partial-URI = relative-part [ "?" query ]
    2718 path-abempty = &lt;path-abempty, defined in [RFC3986], Section 3.3&gt;
    2719 path-absolute = &lt;path-absolute, defined in [RFC3986], Section 3.3&gt;
    2720 port = &lt;port, defined in [RFC3986], Section 3.2.3&gt;
    2721 product = token [ "/" product-version ]
    2722 product-version = token
    2723 protocol-name = token
    2724 protocol-version = token
    2725 pseudonym = token
    2726 qdtext = *( OWS / "!" / %x23-5B / %x5D-7E / obs-text )
    2727 query = &lt;query, defined in [RFC3986], Section 3.4&gt;
    2728 quoted-pair = "\" quoted-text
    2729 quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE
    2730 quoted-text = %x01-09 / %x0B-0C / %x0E-FF
    2731 received-by = ( uri-host [ ":" port ] ) / pseudonym
    2732 received-protocol = [ protocol-name "/" ] protocol-version
    2733 relative-part = &lt;relative-part, defined in [RFC3986], Section 4.2&gt;
    2734 request-header = &lt;request-header, defined in [Part2], Section 3&gt;
    2735 request-target = "*" / absolute-URI / ( path-absolute [ "?" query ] )
     2731<a href="#rule.whitespace" class="smpl">obs-fold</a> = CRLF
     2732<a href="#rule.quoted-string" class="smpl">obs-text</a> = %x80-FF
     2733<a href="#full.date" class="smpl">obsolete-date</a> = rfc850-date / asctime-date
     2734
     2735<a href="#transfer.codings" class="smpl">parameter</a> = attribute BWS "=" BWS value
     2736<a href="#uri" class="smpl">partial-URI</a> = relative-part [ "?" query ]
     2737<a href="#uri" class="smpl">path-abempty</a> = &lt;path-abempty, defined in [RFC3986], Section 3.3&gt;
     2738<a href="#uri" class="smpl">path-absolute</a> = &lt;path-absolute, defined in [RFC3986], Section 3.3&gt;
     2739<a href="#uri" class="smpl">port</a> = &lt;port, defined in [RFC3986], Section 3.2.3&gt;
     2740<a href="#product.tokens" class="smpl">product</a> = token [ "/" product-version ]
     2741<a href="#product.tokens" class="smpl">product-version</a> = token
     2742<a href="#header.via" class="smpl">protocol-name</a> = token
     2743<a href="#header.via" class="smpl">protocol-version</a> = token
     2744<a href="#header.via" class="smpl">pseudonym</a> = token
     2745
     2746<a href="#rule.quoted-string" class="smpl">qdtext</a> = *( OWS / "!" / %x23-5B / %x5D-7E / obs-text )
     2747<a href="#uri" class="smpl">query</a> = &lt;query, defined in [RFC3986], Section 3.4&gt;
     2748<a href="#rule.quoted-pair" class="smpl">quoted-pair</a> = "\" quoted-text
     2749<a href="#rule.quoted-string" class="smpl">quoted-string</a> = DQUOTE *( qdtext / quoted-pair ) DQUOTE
     2750<a href="#rule.quoted-pair" class="smpl">quoted-text</a> = %x01-09 / %x0B-0C / %x0E-FF
     2751
     2752<a href="#header.via" class="smpl">received-by</a> = ( uri-host [ ":" port ] ) / pseudonym
     2753<a href="#header.via" class="smpl">received-protocol</a> = [ protocol-name "/" ] protocol-version
     2754<a href="#uri" class="smpl">relative-part</a> = &lt;relative-part, defined in [RFC3986], Section 4.2&gt;
     2755<a href="#abnf.dependencies" class="smpl">request-header</a> = &lt;request-header, defined in [Part2], Section 3&gt;
     2756<a href="#request-target" class="smpl">request-target</a> = "*" / absolute-URI / ( path-absolute [ "?" query ] )
    27362757 / authority
    2737 response-header = &lt;response-header, defined in [Part2], Section 5&gt;
    2738 rfc1123-date = wkday "," SP date1 SP time SP GMT
    2739 rfc850-date = weekday "," SP date2 SP time SP GMT
     2758<a href="#abnf.dependencies" class="smpl">response-header</a> = &lt;response-header, defined in [Part2], Section 5&gt;
     2759<a href="#full.date" class="smpl">rfc1123-date</a> = wkday "," SP date1 SP time SP GMT
     2760<a href="#full.date" class="smpl">rfc850-date</a> = weekday "," SP date2 SP time SP GMT
     2761
    27402762s-Apr = %x41.70.72
    27412763s-Aug = %x41.75.67
     
    27572779s-Tue = %x54.75.65
    27582780s-Wed = %x57.65.64
    2759 start-line = Request-Line / Status-Line
    2760 t-codings = "trailers" / ( transfer-extension [ accept-params ] )
    2761 tchar = "!" / "#" / "$" / "%" / "&amp;" / "'" / "*" / "+" / "-" / "." /
     2781<a href="#message.types" class="smpl">start-line</a> = Request-Line / Status-Line
     2782
     2783<a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( transfer-extension [ accept-params ] )
     2784<a href="#rule.token.separators" class="smpl">tchar</a> = "!" / "#" / "$" / "%" / "&amp;" / "'" / "*" / "+" / "-" / "." /
    27622785 "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA
    2763 time = 2DIGIT ":" 2DIGIT ":" 2DIGIT
    2764 token = 1*tchar
    2765 trailer-part = *( entity-header CRLF )
    2766 transfer-coding = "chunked" / transfer-extension
    2767 transfer-extension = token *( OWS ";" OWS parameter )
    2768 uri-host = &lt;host, defined in [RFC3986], Section 3.2.2&gt;
    2769 value = token / quoted-string
    2770 weekday = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun
    2771 wkday = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun
     2786<a href="#full.date" class="smpl">time</a> = 2DIGIT ":" 2DIGIT ":" 2DIGIT
     2787<a href="#rule.token.separators" class="smpl">token</a> = 1*tchar
     2788<a href="#chunked.transfer.encoding" class="smpl">trailer-part</a> = *( entity-header CRLF )
     2789<a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / transfer-extension
     2790<a href="#transfer.codings" class="smpl">transfer-extension</a> = token *( OWS ";" OWS parameter )
     2791
     2792<a href="#uri" class="smpl">uri-host</a> = &lt;host, defined in [RFC3986], Section 3.2.2&gt;
     2793
     2794<a href="#rule.parameter" class="smpl">value</a> = token / quoted-string
     2795
     2796<a href="#full.date" class="smpl">weekday</a> = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun
     2797<a href="#full.date" class="smpl">wkday</a> = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun
     2798
    27722799; Chunked-Body defined but not used
    27732800; Content-Length defined but not used
     
    27812808; http-URI defined but not used
    27822809; partial-URI defined but not used
     2810
     2811
    27832812</pre> <h1 id="rfc.section.E"><a href="#rfc.section.E">E.</a>&nbsp;<a id="change.log" href="#change.log">Change Log (to be removed by RFC Editor before publication)</a></h1>
    27842813      <h2 id="rfc.section.E.1"><a href="#rfc.section.E.1">E.1</a>&nbsp;Since RFC2616
Note: See TracChangeset for help on using the changeset viewer.