Changeset 343


Ignore:
Timestamp:
Nov 10, 2008, 6:46:38 PM (11 years ago)
Author:
fielding@…
Message:

condense ABNF core rules

File:
1 edited

Legend:

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

    r341 r343  
    281281
    282282<section title="Syntax Notation" anchor="notation">
    283 <t>
    284    This specification uses the Augmented Backus-Naur Form (ABNF) notation
    285    of <xref target="RFC5234"/>, including its core ABNF syntax rules:
    286    ALPHA (letters), CR (carriage return), DIGIT (decimal digits),
    287    DQUOTE (double quote), HEXDIG (hexadecimal digits), LF (line feed),
    288    and SP (space).
    289 </t>
     283<iref primary="true" item="Grammar" subitem="ALPHA"/>
     284<iref primary="true" item="Grammar" subitem="CHAR"/>
     285<iref primary="true" item="Grammar" subitem="CR"/>
     286<iref primary="true" item="Grammar" subitem="CRLF"/>
     287<iref primary="true" item="Grammar" subitem="CTL"/>
     288<iref primary="true" item="Grammar" subitem="DIGIT"/>
     289<iref primary="true" item="Grammar" subitem="DQUOTE"/>
     290<iref primary="true" item="Grammar" subitem="HEXDIG"/>
     291<iref primary="true" item="Grammar" subitem="HTAB"/>
     292<iref primary="true" item="Grammar" subitem="LF"/>
     293<iref primary="true" item="Grammar" subitem="OCTET"/>
     294<iref primary="true" item="Grammar" subitem="SP"/>
    290295<t anchor="core.rules">
    291   <x:anchor-alias value="OCTET"/>
     296  <x:anchor-alias value="ALPHA"/>
    292297  <x:anchor-alias value="CHAR"/>
    293   <x:anchor-alias value="ALPHA"/>
    294   <x:anchor-alias value="DIGIT"/>
    295298  <x:anchor-alias value="CTL"/>
    296299  <x:anchor-alias value="CR"/>
     300  <x:anchor-alias value="CRLF"/>
     301  <x:anchor-alias value="DIGIT"/>
     302  <x:anchor-alias value="DQUOTE"/>
     303  <x:anchor-alias value="HEXDIG"/>
     304  <x:anchor-alias value="HTAB"/>
    297305  <x:anchor-alias value="LF"/>
     306  <x:anchor-alias value="OCTET"/>
    298307  <x:anchor-alias value="SP"/>
    299   <x:anchor-alias value="HTAB"/>
    300   <x:anchor-alias value="DQUOTE"/>
    301    The following rules are used throughout this specification to
    302    describe basic parsing constructs. The US-ASCII coded character set
    303    is defined by ANSI X3.4-1986 <xref target="USASCII"/>.
    304 </t>
    305 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="OCTET"/><iref primary="true" item="Grammar" subitem="CHAR"/><iref primary="true" item="Grammar" subitem="ALPHA"/><iref primary="true" item="Grammar" subitem="DIGIT"/><iref primary="true" item="Grammar" subitem="CTL"/><iref primary="true" item="Grammar" subitem="CR"/><iref primary="true" item="Grammar" subitem="LF"/><iref primary="true" item="Grammar" subitem="SP"/><iref primary="true" item="Grammar" subitem="HTAB"/><iref primary="true" item="Grammar" subitem="DQUOTE"/>
    306   <x:ref>OCTET</x:ref>          = %x00-FF
    307                    ; any 8-bit sequence of data
    308   <x:ref>CHAR</x:ref>           = %x01-7F
    309                    ; any US-ASCII character, excluding NUL
    310   <x:ref>ALPHA</x:ref>          = %x41-5A / %x61-7A
    311                    ; A-Z / a-z
    312   <x:ref>DIGIT</x:ref>          = %x30-39
    313                    ; any US-ASCII digit "0".."9"
    314   <x:ref>CTL</x:ref>            = %x00-1F / %x7F
    315                    ; (octets 0 - 31) and DEL (127)
    316   <x:ref>CR</x:ref>             = %x0D
    317                    ; US-ASCII CR, carriage return (13)
    318   <x:ref>LF</x:ref>             = %x0A
    319                    ; US-ASCII LF, linefeed (10)
    320   <x:ref>SP</x:ref>             = %x20
    321                    ; US-ASCII SP, space (32)
    322   <x:ref>HTAB</x:ref>           = %x09
    323                    ; US-ASCII HT, horizontal-tab (9)
    324   <x:ref>DQUOTE</x:ref>         = %x22
    325                    ; US-ASCII double-quote mark (34)
    326 </artwork></figure>
    327 
    328 <section title="Augmented BNF" anchor="notation.abnf">
    329 <t>
    330    All of the mechanisms specified in this document are described in
    331    both prose and an augmented Backus-Naur Form (ABNF) based on that
    332    defined in <xref target="RFC5234"/>. Implementors will need to be
    333    familiar with the notation in order to understand this specification. The
    334    extensions to ABNF used in this specification are described below.
     308   This specification uses the Augmented Backus-Naur Form (ABNF) notation
     309   of <xref target="RFC5234"/>.  The following core rules are included by
     310   reference, as defined in <xref target="RFC5234" x:fmt="," x:sec="B.1"/>:
     311   ALPHA (letters), CHAR (any <xref target="USASCII"/> character,
     312   excluding NUL), CR (carriage return), CRLF (CR LF), CTL (controls),
     313   DIGIT (decimal 0-9), DQUOTE (double quote),
     314   HEXDIG (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab),
     315   LF (line feed), OCTET (any 8-bit sequence of data), and SP (space).
     316</t>
     317
     318<section title="ABNF Extensions" anchor="notation.abnf">
     319<t>
     320   Two extensions to the ABNF rules of <xref target="RFC5234"/> are used to
     321   improve readability. [The current plan is to remove these extensions prior
     322   to the last call draft.]
    335323</t>
    336324
     
    379367<section title="Basic Rules" anchor="basic.rules">
    380368<t anchor="rule.CRLF">
    381   <x:anchor-alias value="CRLF"/>
    382    HTTP/1.1 defines the sequence CR LF as the end-of-line marker for all
     369   HTTP/1.1 defines the sequence CRLF as the end-of-line marker for all
    383370   protocol elements except the entity-body (see <xref target="tolerant.applications"/> for
    384371   tolerant applications). The end-of-line marker within an entity-body
    385372   is defined by its associated media type, as described in &media-types;.
    386373</t>
    387 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="CRLF"/>
    388   <x:ref>CRLF</x:ref>           = <x:ref>CR</x:ref> LF
    389 </artwork></figure>
    390374<t anchor="rule.LWS">
    391375  <x:anchor-alias value="LWS"/>
     
    416400   replaced with a single SP before interpretation of the TEXT value.
    417401</t>
    418 <t anchor="rule.HEXDIG">
    419   <x:anchor-alias value="HEXDIG"/>
    420    Hexadecimal numeric characters are used in several protocol elements.
    421 </t>
    422 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="HEXDIG"/>
    423   <x:ref>HEXDIG</x:ref>         = "A" / "B" / "C" / "D" / "E" / "F"
    424                  / "a" / "b" / "c" / "d" / "e" / "f" / <x:ref>DIGIT</x:ref>
    425 </artwork></figure>
    426402<t anchor="rule.token.separators">
    427403  <x:anchor-alias value="tchar"/>
Note: See TracChangeset for help on using the changeset viewer.