Ignore:
Timestamp:
Mar 2, 2008, 9:21:57 AM (12 years ago)
Author:
julian.reschke@…
Message:

add linking between ABNF rules (does not affect TXT version), relates to #36.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p5-range.xml

    r228 r229  
    255255
    256256<section title="Notational Conventions and Generic Grammar" anchor="notation">
     257  <x:anchor-alias value="DIGIT"/>
     258  <x:anchor-alias value="SP"/>
     259  <x:anchor-alias value="token"/>
    257260<t>
    258261  This specification uses the ABNF syntax defined in &notation-abnf; and
     
    262265</t>
    263266<figure><artwork type="abnf2616">
    264   DIGIT      = &lt;DIGIT, defined in &basic-rules;&gt;
    265   SP         = &lt;SP, defined in &basic-rules;&gt;
     267  <x:ref>DIGIT</x:ref>      = &lt;DIGIT, defined in &basic-rules;&gt;
     268  <x:ref>SP</x:ref>         = &lt;SP, defined in &basic-rules;&gt;
    266269</artwork></figure>
    267270<figure><artwork type="abnf2616">
    268   token      = &lt;token, defined in &basic-rules;&gt;
     271  <x:ref>token</x:ref>      = &lt;token, defined in &basic-rules;&gt;
    269272</artwork></figure>
    270273<t anchor="abnf.dependencies">
     274  <x:anchor-alias value="entity-tag"/>
     275  <x:anchor-alias value="HTTP-date"/>
    271276  The ABNF rules below are defined in other parts:
    272277</t>
    273278<figure><!--Part1--><artwork type="abnf2616">
    274   HTTP-date  = &lt;HTTP-date, defined in &full-date;&gt;
     279  <x:ref>HTTP-date</x:ref>  = &lt;HTTP-date, defined in &full-date;&gt;
    275280</artwork></figure>
    276281<figure><!--Part4--><artwork type="abnf2616">
    277   entity-tag = &lt;entity-tag, defined in &entity-tags;&gt;
     282  <x:ref>entity-tag</x:ref> = &lt;entity-tag, defined in &entity-tags;&gt;
    278283</artwork></figure>
    279284</section>
    280285
    281286<section title="Range Units" anchor="range.units">
     287  <x:anchor-alias value="bytes-unit"/>
     288  <x:anchor-alias value="other-range-unit"/>
     289  <x:anchor-alias value="range-unit"/>
    282290<t>
    283291   HTTP/1.1 allows a client to request that only part (a range of) the
     
    288296</t>
    289297<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="range-unit"/><iref primary="true" item="Grammar" subitem="bytes-unit"/><iref primary="true" item="Grammar" subitem="other-range-unit"/>
    290   range-unit       = bytes-unit | other-range-unit
    291   bytes-unit       = "bytes"
    292   other-range-unit = token
     298  <x:ref>range-unit</x:ref>       = <x:ref>bytes-unit</x:ref> | <x:ref>other-range-unit</x:ref>
     299  <x:ref>bytes-unit</x:ref>       = "bytes"
     300  <x:ref>other-range-unit</x:ref> = <x:ref>token</x:ref>
    293301</artwork></figure>
    294302<t>
     
    416424  <iref primary="true" item="Accept-Ranges header" x:for-anchor=""/>
    417425  <iref primary="true" item="Headers" subitem="Accept-Ranges" x:for-anchor=""/>
     426  <x:anchor-alias value="Accept-Ranges"/>
     427  <x:anchor-alias value="acceptable-ranges"/>
    418428<t>
    419429      The Accept-Ranges response-header field allows the server to
     
    421431</t>
    422432<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Accept-Ranges"/><iref primary="true" item="Grammar" subitem="acceptable-ranges"/>
    423   Accept-Ranges     = "Accept-Ranges" ":" acceptable-ranges
    424   acceptable-ranges = 1#range-unit | "none"
     433  <x:ref>Accept-Ranges</x:ref>     = "Accept-Ranges" ":" <x:ref>acceptable-ranges</x:ref>
     434  <x:ref>acceptable-ranges</x:ref> = 1#<x:ref>range-unit</x:ref> | "none"
    425435</artwork></figure>
    426436<t>
     
    450460  <iref primary="true" item="Content-Range header" x:for-anchor=""/>
    451461  <iref primary="true" item="Headers" subitem="Content-Range" x:for-anchor=""/>
     462  <x:anchor-alias value="byte-content-range-spec"/>
     463  <x:anchor-alias value="byte-range-resp-spec"/>
     464  <x:anchor-alias value="Content-Range"/>
     465  <x:anchor-alias value="content-range-spec"/>
     466  <x:anchor-alias value="instance-length"/>
    452467<t>
    453468   The Content-Range entity-header is sent with a partial entity-body to
     
    456471</t>
    457472<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Content-Range"/><iref primary="true" item="Grammar" subitem="content-range-spec"/><iref primary="true" item="Grammar" subitem="byte-content-range-spec"/><iref primary="true" item="Grammar" subitem="byte-range-resp-spec"/><iref primary="true" item="Grammar" subitem="instance-length"/>
    458   Content-Range = "Content-Range" ":" content-range-spec
     473  <x:ref>Content-Range</x:ref> = "Content-Range" ":" <x:ref>content-range-spec</x:ref>
    459474 
    460   content-range-spec      = byte-content-range-spec
    461   byte-content-range-spec = bytes-unit SP
    462                             byte-range-resp-spec "/"
    463                             ( instance-length | "*" )
     475  <x:ref>content-range-spec</x:ref>      = <x:ref>byte-content-range-spec</x:ref>
     476  <x:ref>byte-content-range-spec</x:ref> = <x:ref>bytes-unit</x:ref> <x:ref>SP</x:ref>
     477                            <x:ref>byte-range-resp-spec</x:ref> "/"
     478                            ( <x:ref>instance-length</x:ref> | "*" )
    464479 
    465   byte-range-resp-spec = (first-byte-pos "-" last-byte-pos)
     480  <x:ref>byte-range-resp-spec</x:ref> = (<x:ref>first-byte-pos</x:ref> "-" <x:ref>last-byte-pos</x:ref>)
    466481                                 | "*"
    467   instance-length           = 1*DIGIT
     482  <x:ref>instance-length</x:ref>           = 1*<x:ref>DIGIT</x:ref>
    468483</artwork></figure>
    469484<t>
     
    583598  <iref primary="true" item="If-Range header" x:for-anchor=""/>
    584599  <iref primary="true" item="Headers" subitem="If-Range" x:for-anchor=""/>
     600  <x:anchor-alias value="If-Range"/>
    585601<t>
    586602   If a client has a partial copy of an entity in its cache, and wishes
     
    599615</t>
    600616<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="If-Range"/>
    601   If-Range = "If-Range" ":" ( entity-tag | HTTP-date )
     617  <x:ref>If-Range</x:ref> = "If-Range" ":" ( <x:ref>entity-tag</x:ref> | <x:ref>HTTP-date</x:ref> )
    602618</artwork></figure>
    603619<t>
     
    634650   the entity-body (not necessarily the same as the message-body).
    635651</t>
    636 <t>
     652<t anchor="rule.ranges-specifier">
     653  <x:anchor-alias value="byte-range-set"/>
     654  <x:anchor-alias value="byte-range-spec"/>
     655  <x:anchor-alias value="byte-ranges-specifier"/>
     656  <x:anchor-alias value="first-byte-pos"/>
     657  <x:anchor-alias value="last-byte-pos"/>
     658  <x:anchor-alias value="ranges-specifier"/>
     659  <x:anchor-alias value="suffix-byte-range-spec"/>
     660  <x:anchor-alias value="suffix-length"/>
    637661   A byte range operation &MAY; specify a single range of bytes, or a set
    638662   of ranges within a single entity.
    639663</t>
    640664<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="ranges-specifier"/><iref primary="true" item="Grammar" subitem="byte-ranges-specifier"/><iref primary="true" item="Grammar" subitem="byte-range-set"/><iref primary="true" item="Grammar" subitem="byte-range-spec"/><iref primary="true" item="Grammar" subitem="first-byte-pos"/><iref primary="true" item="Grammar" subitem="last-byte-pos"/>
    641   ranges-specifier = byte-ranges-specifier
    642   byte-ranges-specifier = bytes-unit "=" byte-range-set
    643   byte-range-set  = 1#( byte-range-spec | suffix-byte-range-spec )
    644   byte-range-spec = first-byte-pos "-" [last-byte-pos]
    645   first-byte-pos  = 1*DIGIT
    646   last-byte-pos   = 1*DIGIT
     665  <x:ref>ranges-specifier</x:ref> = <x:ref>byte-ranges-specifier</x:ref>
     666  <x:ref>byte-ranges-specifier</x:ref> = <x:ref>bytes-unit</x:ref> "=" <x:ref>byte-range-set</x:ref>
     667  <x:ref>byte-range-set</x:ref>  = 1#( <x:ref>byte-range-spec</x:ref> | <x:ref>suffix-byte-range-spec</x:ref> )
     668  <x:ref>byte-range-spec</x:ref> = <x:ref>first-byte-pos</x:ref> "-" [<x:ref>last-byte-pos</x:ref>]
     669  <x:ref>first-byte-pos</x:ref>  = 1*<x:ref>DIGIT</x:ref>
     670  <x:ref>last-byte-pos</x:ref>   = 1*<x:ref>DIGIT</x:ref>
    647671</artwork></figure>
    648672<t>
     
    670694</t>
    671695<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="suffix-byte-range-spec"/><iref primary="true" item="Grammar" subitem="suffix-length"/>
    672   suffix-byte-range-spec = "-" suffix-length
    673   suffix-length = 1*DIGIT
     696  <x:ref>suffix-byte-range-spec</x:ref> = "-" <x:ref>suffix-length</x:ref>
     697  <x:ref>suffix-length</x:ref> = 1*<x:ref>DIGIT</x:ref>
    674698</artwork></figure>
    675699<t>
     
    717741
    718742<section title="Range Retrieval Requests" anchor="range.retrieval.requests">
     743  <x:anchor-alias value="Range"/>
    719744<t>
    720745   HTTP retrieval requests using conditional or unconditional GET
     
    724749</t>
    725750<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Range"/>
    726   Range = "Range" ":" ranges-specifier
     751  <x:ref>Range</x:ref> = "Range" ":" <x:ref>ranges-specifier</x:ref>
    727752</artwork></figure>
    728753<t>
Note: See TracChangeset for help on using the changeset viewer.