その他の追加・修正
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/02/13 15:07 UTC 版)
EBNF は次のような BNF の欠陥を排除している。 BNF は記号として (<, >, |, ::=) を使っている。定義対象の言語にもこれらの記号が使われている場合、BNF はそれを何かに置き換えて表現する必要があった。 BNF では1つの規則を一行で表す必要があった。 EBNF はこれらの問題を次のように解決している。 終端記号は必ず引用符("…" または '…')で囲まれる。非終端記号を囲んでいた山括弧("<…>")は省略されている。 規則の最後にセミコロンなどの記号を付与して、規則の範囲を明確化している。 他にも様々な拡張がされているが、定義できる言語の範囲という意味では BNF に比べて「強力」というわけではない。実際、EBNF で定義可能な文法は、基本的に BNF でも表現できる。ただし、その場合 BNF での表現は非常に大きくなってしまう。 EBNF はISOが ISO/IEC 14977:1996(E) として標準化した。 BNF に何らかの拡張をしたものを EBNF と呼ぶこともある。例えば、W3C は XML の文法記述に 独自の EBNF を使っている。
※この「その他の追加・修正」の解説は、「EBNF」の解説の一部です。
「その他の追加・修正」を含む「EBNF」の記事については、「EBNF」の概要を参照ください。
- その他の追加修正のページへのリンク