拡張BNF
読み方:かくちょうビーエヌエフ
別名:拡張BN記法
【英】Extended BNF, EBNF
拡張BNFとは、プログラミング言語をはじめとしたコンピュータ用言語体系の文法を記述するための言語(メタ言語)の一種で、現在最も広く用いられているメタ言語のひとつである。
拡張BNFは、BNF(バッカス-ナウアー記法)に仕様の拡張が加えられたものである。BNFならびに拡張BNFは純粋に文法を定義するものであって、言語の意味を定義することはできない。
拡張BNFには、独自の拡張仕様が多く存在している(何種類もの拡張BN記法がある)という難点がある。ただし拡張BNFは、プログラミング言語の定義だけでなく、通信に必要となる規定であるプロトコルの構造や、データの構成、あるいはHTMLやXMLに代表されるマークアップ言語の定義などにも用いられている。
BNFは1959年にアメリカ人のジョン・バッカス(John Backus)氏が立案、デンマーク人のペーター・ナウアー(Peter Naur)氏が修正した記法で、翌年数値計算用プログラミング言語ALGOL60の定義に初めて採用された。その後各々の拡張が付加されて、拡張BNFとして広く利用されている。
|