Meta-Object Facility
MOFはオブジェクト指向でなじみのあるクラスを用いて構造を定義する(ただし、ここで用いるクラス MOF::Classes であり、UML で用いるUML::Classes とは厳密には異なる)。これによりメタレベルにおける概念(モデル要素)とその構造を定義する。しかし、MOFで定義されるモデルがUMLのようなオブジェクト指向型のメタモデルに限定されるわけではない。オブジェクト指向型でないメタモデルも定義可能である(例えば、関係モデル、ペトリネットやWebサービスのメタモデルなど)。
2008年2月現在、OMG は2種類の MOF を定義している:
EMOF: Essential MOF(基本MOF)
CMOF: Complete MOF(完全MOF)
ECoreという派生仕様が Eclipse Modeling Framework で定義されているが、これはほぼOMGのEMOFに相当する。
他の関連仕様としてOCLがある。これは述語論理を使用してモデルの制限や問合せを定義する形式言語の仕様である。
また、重要な新たな標準としてQVTがある。これはOCLの拡張であり、MOFベースのモデルの変換方法を記述する手段を提供するものである。(モデル変換言語参照)。
MOFは国際標準規格となっている:
ISO/IEC 19502:2005 Information technology -- Meta Object Facility (MOF)