Ignore:
Timestamp:
Jul 15, 2012, 10:53:36 PM (7 years ago)
Author:
julian.reschke@…
Message:

Undo the part of [1782] that removed/moved the conformance/syntax sections.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p2-semantics.xml

    r1790 r1797  
    250250   had become in <xref target="RFC2616"/>.
    251251</t></x:note>
     252<section title="Conformance and Error Handling" anchor="intro.conformance.and.error.handling">
     253<t>
     254   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
     255   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
     256   document are to be interpreted as described in <xref target="RFC2119"/>.
     257</t>
     258<t>
     259   This specification targets conformance criteria according to the role of
     260   a participant in HTTP communication.  Hence, HTTP requirements are placed
     261   on senders, recipients, clients, servers, user agents, intermediaries,
     262   origin servers, proxies, gateways, or caches, depending on what behavior
     263   is being constrained by the requirement. See &architecture; for definitions
     264   of these terms.
     265</t>
     266<t>
     267   The verb "generate" is used instead of "send" where a requirement
     268   differentiates between creating a protocol element and merely forwarding a
     269   received element downstream.
     270</t>
     271<t>
     272   An implementation is considered conformant if it complies with all of the
     273   requirements associated with the roles it partakes in HTTP. Note that
     274   SHOULD-level requirements are relevant here, unless one of the documented
     275   exceptions is applicable.
     276</t>
     277<t>
     278   This document also uses ABNF to define valid protocol elements
     279   (<xref target="notation"/>).
     280   In addition to the prose requirements placed upon them, senders &MUST-NOT;
     281   generate protocol elements that do not match the grammar defined by the
     282   ABNF rules for those protocol elements that are applicable to the sender's
     283   role. If a received protocol element is processed, the recipient &MUST; be
     284   able to parse any value that would match the ABNF rules for that protocol
     285   element, excluding only those rules not applicable to the recipient's role.
     286</t>
     287<t>
     288   Unless noted otherwise, a recipient &MAY; attempt to recover a usable
     289   protocol element from an invalid construct.  HTTP does not define
     290   specific error handling mechanisms except when they have a direct impact
     291   on security, since different applications of the protocol require
     292   different error handling strategies.  For example, a Web browser might
     293   wish to transparently recover from a response where the
     294   <x:ref>Location</x:ref> header field doesn't parse according to the ABNF,
     295   whereas a systems control client might consider any form of error recovery
     296   to be dangerous.
     297</t>
     298</section>
     299
     300<section title="Syntax Notation" anchor="notation">
     301  <x:anchor-alias value="ALPHA"/>
     302  <x:anchor-alias value="CR"/>
     303  <x:anchor-alias value="DIGIT"/>
     304  <x:anchor-alias value="LF"/>
     305  <x:anchor-alias value="OCTET"/>
     306  <x:anchor-alias value="SP"/>
     307  <x:anchor-alias value="VCHAR"/>
     308<t>
     309   This specification uses the Augmented Backus-Naur Form (ABNF) notation
     310   of <xref target="RFC5234"/> with the list rule extension defined in
     311   &notation;.  <xref target="collected.abnf"/> shows the collected ABNF
     312   with the list rule expanded.
     313</t>
     314<t>
     315  The following core rules are included by
     316  reference, as defined in <xref target="RFC5234" x:fmt="," x:sec="B.1"/>:
     317  ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls),
     318  DIGIT (decimal 0-9), DQUOTE (double quote),
     319  HEXDIG (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed),
     320  OCTET (any 8-bit sequence of data), SP (space), and
     321  VCHAR (any visible US-ASCII character).
     322</t>
     323
     324<section title="Core Rules" anchor="core.rules">
     325  <x:anchor-alias value="quoted-string"/>
     326  <x:anchor-alias value="token"/>
     327  <x:anchor-alias value="word"/>
     328  <x:anchor-alias value="BWS"/>
     329  <x:anchor-alias value="OWS"/>
     330  <x:anchor-alias value="RWS"/>
     331<t>
     332  The core rules below are defined in <xref target="Part1"/>:
     333</t>
     334<figure><artwork type="abnf2616">
     335  <x:ref>BWS</x:ref>           = &lt;BWS, defined in &whitespace;&gt;
     336  <x:ref>OWS</x:ref>           = &lt;OWS, defined in &whitespace;&gt;
     337  <x:ref>RWS</x:ref>           = &lt;RWS, defined in &whitespace;&gt;
     338  <x:ref>quoted-string</x:ref> = &lt;quoted-string, defined in &field-components;&gt;
     339  <x:ref>token</x:ref>         = &lt;token, defined in &field-components;&gt;
     340  <x:ref>word</x:ref>          = &lt;word, defined in &field-components;&gt;
     341</artwork></figure>
     342</section>
     343
     344<section title="ABNF Rules defined in other Parts of the Specification" anchor="abnf.dependencies">
     345  <x:anchor-alias value="absolute-URI"/>
     346  <x:anchor-alias value="comment"/>
     347  <x:anchor-alias value="partial-URI"/>
     348  <x:anchor-alias value="qvalue"/>
     349  <x:anchor-alias value="URI-reference"/>
     350<t>
     351  The ABNF rules below are defined in other parts:
     352</t>
     353<figure><!--Part1--><artwork type="abnf2616">
     354  <x:ref>absolute-URI</x:ref>  = &lt;absolute-URI, defined in &uri;&gt;
     355  <x:ref>comment</x:ref>       = &lt;comment, defined in &field-components;&gt;
     356  <x:ref>partial-URI</x:ref>   = &lt;partial-URI, defined in &uri;&gt;
     357  <x:ref>qvalue</x:ref>        = &lt;qvalue, defined in &qvalue;&gt;
     358  <x:ref>URI-reference</x:ref> = &lt;URI-reference, defined in &uri;&gt;
     359</artwork></figure>
     360</section>
     361</section>
    252362</section>
    253363
     
    38823992</artwork></figure>
    38833993</section>
    3884 </section>
    3885 
    3886 <section title="ABNF Rules Defined Elsewhere" anchor="abnf.dependencies">
    3887   <x:anchor-alias value="ALPHA"/>
    3888   <x:anchor-alias value="CR"/>
    3889   <x:anchor-alias value="DIGIT"/>
    3890   <x:anchor-alias value="LF"/>
    3891   <x:anchor-alias value="OCTET"/>
    3892   <x:anchor-alias value="SP"/>
    3893   <x:anchor-alias value="VCHAR"/>
    3894   <x:anchor-alias value="BWS"/>
    3895   <x:anchor-alias value="OWS"/>
    3896   <x:anchor-alias value="RWS"/>
    3897   <x:anchor-alias value="absolute-URI"/>
    3898   <x:anchor-alias value="comment"/>
    3899   <x:anchor-alias value="partial-URI"/>
    3900   <x:anchor-alias value="qvalue"/>
    3901   <x:anchor-alias value="URI-reference"/>
    3902   <x:anchor-alias value="quoted-string"/>
    3903   <x:anchor-alias value="token"/>
    3904   <x:anchor-alias value="word"/>
    3905 <t>
    3906    This specification uses the Augmented Backus-Naur Form (ABNF) notation
    3907    of <xref target="RFC5234"/> with the list rule extension defined in
    3908    &notation;.  <xref target="collected.abnf"/> shows the collected ABNF
    3909    with the list rule expanded.
    3910 </t>
    3911 <t>
    3912    The following core rules are included by
    3913    reference, as defined in <xref target="RFC5234" x:fmt="," x:sec="B.1"/>:
    3914    ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls),
    3915    DIGIT (decimal 0-9), DQUOTE (double quote),
    3916    HEXDIG (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed),
    3917    OCTET (any 8-bit sequence of data), SP (space), and
    3918    VCHAR (any visible US-ASCII character).
    3919 </t>
    3920 <t>
    3921    The ABNF rules below are defined in other parts:
    3922 </t>
    3923 <figure><artwork type="abnf2616">
    3924   <x:ref>BWS</x:ref>           = &lt;BWS, defined in &whitespace;&gt;
    3925   <x:ref>OWS</x:ref>           = &lt;OWS, defined in &whitespace;&gt;
    3926   <x:ref>RWS</x:ref>           = &lt;RWS, defined in &whitespace;&gt;
    3927   <x:ref>URI-reference</x:ref> = &lt;URI-reference, defined in &uri;&gt;
    3928   <x:ref>absolute-URI</x:ref>  = &lt;absolute-URI, defined in &uri;&gt;
    3929   <x:ref>partial-URI</x:ref>   = &lt;partial-URI, defined in &uri;&gt;
    3930   <x:ref>quoted-string</x:ref> = &lt;quoted-string, defined in &field-components;&gt;
    3931   <x:ref>qvalue</x:ref>        = &lt;qvalue, defined in &qvalue;&gt;
    3932   <x:ref>token</x:ref>         = &lt;token, defined in &field-components;&gt;
    3933   <x:ref>word</x:ref>          = &lt;word, defined in &field-components;&gt;
    3934   <x:ref>comment</x:ref>       = &lt;comment, defined in &field-components;&gt;
    3935 </artwork></figure>
    3936 <t>
    3937    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
    3938    "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
    3939    document are to be interpreted as described in <xref target="RFC2119"/>.
    3940 </t>
    39413994</section>
    39423995
Note: See TracChangeset for help on using the changeset viewer.