2. 表記規則 (Conventions)
2.1. 適合基準 (Conformance Criteria)
本文書におけるキーワード「しなければならない (MUST)」、「してはならない (MUST NOT)」、「必須である (REQUIRED)」、「することになる (SHALL)」、「しないことになる (SHALL NOT)」、「すべきである (SHOULD)」、「すべきでない (SHOULD NOT)」、「推奨される (RECOMMENDED)」、「してもよい (MAY)」、「任意である (OPTIONAL)」は、[RFC2119]に記載されているとおりに解釈されるものとします。
アルゴリズムの一部として命令形で表現された要件(「先頭のスペース文字を削除する」や「falseを返してこれらのステップを中止する」など)は、アルゴリズムを導入する際に使用されるキーワード(「MUST」、「SHOULD」、「MAY」など)の意味で解釈されるものとします。
アルゴリズムまたは特定のステップとして表現された適合要件は、最終結果が同等である限り、任意の方法で実装できます。特に、本仕様で定義されているアルゴリズムは理解しやすいことを意図しており、パフォーマンスを重視したものではありません。
2.2. 構文表記 (Syntax Notation)
本仕様は、[RFC5234]の拡張バッカス・ナウア記法 (ABNF: Augmented Backus-Naur Form) 表記を使用します。
以下のコアルールは、[RFC5234]の付録B.1で定義されているとおり、参照により含まれます: ALPHA (文字)、CR (キャリッジリターン)、CRLF (CR LF)、CTL (制御文字)、DIGIT (10進数 0-9)、DQUOTE (二重引用符)、HEXDIG (16進数 0-9/A-F/a-f)、LF (ラインフィード)、OCTET (任意の8ビットデータシーケンス)、SP (スペース)、HTAB (水平タブ)、CHAR (任意のUS-ASCII文字)、VCHAR (任意の可視US-ASCII文字)、およびWSP (ホワイトスペース)。
OWS ルールは、ゼロ個以上の線形ホワイトスペースオクテットが出現する可能性がある場所で使用されます。OWS は、生成されないか、単一のSPとして生成されるべきです (SHOULD)。field-content内で発生する複数のOWSオクテットは、フィールド値を解釈する前、またはメッセージをダウンストリームに転送する前に、単一のSPに置き換えられるか、すべてのSPオクテットに変換されるべきです (SHOULD) (SP以外の各オクテットをSPに置き換える)。
OWS = *( SP / HTAB / obs-fold )
; "optional" whitespace
obs-fold = CRLF ( SP / HTAB )
; obsolete line folding
2.3. 用語 (Terminology)
「ユーザーエージェント (user agent)」、「クライアント (client)」、「サーバー (server)」、「プロキシ (proxy)」、および「オリジンサーバー (origin server)」という用語は、HTTP/1.1仕様 ([RFC2616]、セクション1.3) と同じ意味を持ちます。
グローバル一意識別子 (globally unique identifier) は、以前に存在していた他のすべての値とは異なる値です。例えば、十分に長いランダム文字列は、グローバル一意識別子になる可能性が高いです。オリジン値がユーザーエージェントから外部に出ない場合、ユーザーエージェントにローカルな単調増加カウンターもグローバル一意識別子として機能できます。