メタ言語
言語を作るための言語をメタ言語という。
有名なメタ言語としては、XMLやSGMLがある。
その他、コンパイラを作成するコンパイラ(コンパイラコンパイラ と呼ばれる)のyaccなども、メタ言語の一種と考えられる。
メタ言語の特徴としては、メタ言語を使用するだけでは、直接的な情報を何も記述できないことである。
メタ言語は、それ自身で直接的な情報を記述するのではなく、そのような情報を記述する言語を作成するために使われる。
例えばXMLであれば、XML勧告を読むだけでは何も直接的な情報を記述することはできない。
情報を記述するためには、要素や属性を決めてやらねばならない。
この「決める」という行為こそ、言語を作成することにほかならない。
meta language ; metalanguage
メタ(meta)
スキーマ言語(schema language)
マークアップ言語(Markup Language)