バッカス・ナウア記法
バッカス・ナウア記法とは
バッカス・ナウア記法(Backus-Naur Form)とは、文脈自由文法を定義するのに用いられるメタ言語のことで、一般にBNFやBN記法と略される。現在はこのBNFを拡張したEBNF (Extended BNF) が一般的に使われている。EBNFでは正規表現を用いてより簡単に記述でき、プロトコル規定言語であるASN.1や、XMLの構文定義にも利用されている。
ジョン・バッカスとピーター・ナウアがALGOL 60 の文法定義のために考案。当初は文脈自由文法の本来の定義に則り or(|)以外の定義はなく、繰り返しは再帰を利用して表現されている。*、?等を含む正規表現はBNFを拡張したEBNFによって導入された。コンパイラコンパイラを使用してコンパイラやインタープリタを作成する際に、プログラミング言語の構文規則を記述するために使われる場合もある。
ISO/IEC 14977:1996においてEBNFの標準が定義されているが、EBNFにもいろいろな亜種や変種がある。例えば、RFC2234にはABNFという変種が定義されている。しかし、ABNFは標準のEBNFとかなり異なる部分がある。
- 出典: フリー百科事典『ウィキペディア(Wikipedia)』
- [ バッカス・ナウア記法の改定履歴 ]
ソーシャルウェア
InWeaveは組織対応等の機能を強化した情報・知識共有基盤です。
Oracleデータベース
高い技術力と豊富なノウハウを持った技術者によるOracleデータベース設計/構築サービスをご提供。









