Appendix B. Core ABNF of ABNF (ABNFのコアルール)
B.1. Core Rules (コアルール)
SP、HTAB、CRLF、DIGIT、ALPHAなどの特定の基本ルールは大文字です。これらのコアルールは、この付録で定義されています。
ALPHA = %x41-5A / %x61-7A ; A-Z / a-z
BIT = "0" / "1"
CHAR = %x01-7F
; NULを除く任意の7ビットUS-ASCII文字
CR = %x0D
; キャリッジリターン
CRLF = CR LF
; インターネット標準改行
CTL = %x00-1F / %x7F
; 制御文字
DIGIT = %x30-39
; 0-9
DQUOTE = %x22
; " (二重引用符)
HEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"
HTAB = %x09
; 水平タブ
LF = %x0A
; ラインフィード
LWSP = *(WSP / CRLF WSP)
; この線形空白ルールの使用は、
; 空白のみを含む行を許可します。
; これらはメールヘッダーでは
; もはや合法ではなく、他の
; コンテキストで相互運用性の
; 問題を引き起こしています。
; メールヘッダーを定義するときは
; 使用しないでください。他の
; コンテキストでは注意して
; 使用してください。
OCTET = %x00-FF
; 8ビットのデータ
SP = %x20
VCHAR = %x21-7E
; 可視(印刷可能)文字
WSP = SP / HTAB
; 空白文字
B.2. Common Encoding (共通エンコーディング)
外部的には、データは「ネットワーク仮想ASCII」(すなわち、8ビットフィールドの7ビットUS-ASCII) として表現され、上位 (8番目) ビットはゼロに設定されます。値の文字列は「ネットワークバイトオーダー」であり、より高い値のバイトが左側に表され、ネットワーク上で最初に送信されます。
文字エンコーディング
コアルールはUS-ASCIIエンコーディングを使用します。各文字は、対応するASCII値で表されます:
- 文字 (A-Z, a-z): %x41-5A, %x61-7A
- 数字 (0-9): %x30-39
- 一般的な記号: SP (%x20), HTAB (%x09)など
使用ガイドライン
これらのコアルールは、複数のインターネット仕様で使用されるように設計されています。基本的な構文要素の共通語彙を提供し、さまざまなプロトコルとフォーマット間での一貫性を確保します。
重要な注記:
- LWSP (線形空白) は、空白のみを含む行を許可するため、注意して使用する必要があります (SHOULD)
- コアルールは7ビットUS-ASCII環境を想定しています
- 異なる文字エンコーディングを使用する仕様については、適切な調整を行う必要があります (SHOULD)