ドメイン固有モデリング
言語を定義するには、その定義を記述する言語が必要である。言語のモデルをメタモデルと呼ぶことが多いが、モデリング言語を定義するための言語はさしずめメタメタモデルである。メタメタモデルは2種類に分類される。既存言語のカスタマイズによって生まれた言語と当初からメタメタモデルとして開発された言語である。
既存言語から派生したメタメタモデルとしては、実体関連モデル、形式言語、EBNF、オントロジー言語、XML Schema、MOFなどがある。
ドメイン固有モデリングは特定タスクのために新たな言語を作成することを特徴としているため、メタメタモデルとして新たに設計された言語があるのも何ら驚くべきことではない。その種の言語で有名なものとしては、OPRR、GOPRR、GOPPRRがある。
他のメタモデル定義用ドメイン固有言語として、単純な変換言語とすることを指向したATLがある。ATL変換の巨大なライブラリがEclipse metamodel open source libraryにある。ATLはドメイン固有変換言語の典型例である。