RFC 2141のABNF

RFC 2141のABNF

RFC 2141 の ABNF

[1] RFC 2141 は、構文の定義のために BNF の一種を使っています。この BNF 自体の定義は明記されていません。

[3]

<非終端記号>
非終端記号は、 <> で括ります。 ASCII ラテン文字-SPACE名前に使われています。
"終端記号"
終端記号 (の列) は " で括ります。 """" を表している例があります。 (おそらく誤って) '%" となっているところがあります。
octets n-m (N-M hex)
十進数十六進数で示された範囲のオクテット終端記号として指定します。 十進数は1桁以上です。 十六進数には1桁以上の大文字が使われています。
左辺 COLON COLON = 右辺
左辺右辺を定義します。
a b
連接
a | b
選択
[ a ]
単なる集団化と思われます。
n,m a
n 個以上 m 個以下を表します。
n*a
n 個以上を表します。

RFC 4617 の ABNF

[2] RFC 4617 は、 RFC 4234ABNF を使うと主張していますが、実際には RFC 2141BNF の一変種です。

[4] >>3 の他に:

aCOLONb
aCOLON (終端記号)、b連接です。
(a)
集団化
{text}
自然言語による記述 (注釈?)

メモ