Meta Object Facility

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Der Begriff Meta Object Facility (MOF) wurde von der Object Management Group (OMG) eingeführt und beschreibt eine spezielle Metadaten-Architektur. Kernbestandteil ist ein Meta-Meta-Modell. Des Weiteren enthalten die MOF-Spezifikation und assoziierte Standards Wege zur Modellverarbeitung, gewissermaßen einen Werkzeugkasten. Vor allem zu nennen ist das XMI-Format (XML Metadata Interchange) für den Austausch von Metadaten.

MOF überbrückt die Lücke zwischen unterschiedlichen Metamodellen, indem eine allgemeine Grundlage für Metamodelle geschaffen wird. Wenn zwei verschiedene Metamodelle MOF-konform sind, dann können Modelle, die auf ihnen basieren, im gleichen Modelldepot (Repository) ansässig sein. Dies erlaubt dann auch die gemeinsame Verarbeitung, etwa durch Modelltransformation.

Ebenen[Bearbeiten]

Hierarchie der Metamodellierung

Die MOF stuft Daten in vier Meta-Ebenen:

M0-Ebene 
Konkret. Ausgeprägte Daten.
M1-Ebene 
Modelle. Zum Beispiel physikalische oder logische Daten- oder Prozessmodelle oder konkrete Ausprägungen von UML- bzw. Objekt-Modellen, welche die Daten der M0-Ebene definieren.
M2-Ebene 
Meta-Modelle. Definieren, wie die Modelle aufgebaut und strukturiert sind. Zum Beispiel definieren Sprachelemente wie Klassen, Assoziationen und Attribute der UML 2.0, wie konkrete UML-Modelle aufgebaut sein können.
M3-Ebene 
Meta-Meta-Modelle (bzw. MOF-Ebene). Abstrakte Ebene, die zur Definition der M2-Ebene herangezogen wird. Die Definition der M3-Ebene erfolgt mit den Mitteln der M3-Ebene selbst, dies stellt den Abschluss einer sonst unendlichen Metaisierung dar.
Das Diagramm zeigt eine vereinfachte Sicht auf die M3-Ebene nach MOF.

Verwandte Standards[Bearbeiten]

Weitere OMG-Standards mit engem Bezug zur MOF sind unter anderem:

EMOF (Essential MOF) ist eine Untermenge von MOF 2.0. Sie dient dazu, einfache Metamodelle auf einfache Weise – d. h. ohne die gesamte MOF verstehen zu müssen – erstellen zu können. EMOF ist auch weitestgehend kompatibel zum verbreiteten Metamodell Ecore, das im Eclipse Modeling Framework eingesetzt wird. CMOF (Complete MOF) umfasst dagegen den ganzen Sprachumfang.

Weblinks[Bearbeiten]