Meta-Objekt-Einrichtung

Das Meta-Objekt-Einrichtung (MOF) ist ein Objektverwaltungsgruppe (OMG) Standard für Modellgetriebene Engineering. Sein Zweck ist es, a zu liefern Typ System für Einheiten in der Corba Architektur und eine Reihe von Schnittstellen, durch die diese Typen erstellt und manipuliert werden können. Die offizielle Referenzseite kann auf der OMG -Website gefunden werden.[1]
Überblick
MOF wurde entwickelt, um a bereitzustellen Typ System für den Einsatz in der Corba Architektur, eine Reihe von Schemata, durch die die Struktur, die Bedeutung und das Verhalten von Objekten definiert werden konnten, und eine Reihe von CORBA -Schnittstellen, durch die diese Schemata erzeugt, gespeichert und manipuliert werden können.[2]
MOF ist als vierschichtige Architektur konzipiert. Es bietet ein Meta-Meta-Modell an der oberen Schicht, die als M3-Schicht bezeichnet wird. Dieses M3-Modell ist die von MOF verwendete Sprache zum Bau von Metamodellen, die M2-Modelle genannt werden. Das bekannteste Beispiel für ein Schicht -2 -MOF -Modell ist das UML -Metamodell, das Modell, das die UML selbst beschreibt. Diese M2-Modelle beschreiben Elemente der M1-Schicht und damit M1-Modelle. Dies wären zum Beispiel Modelle, die in UML geschrieben wurden. Die letzte Schicht ist die M0-Schicht- oder Datenschicht. Es wird verwendet, um reale Objekte zu beschreiben.
Jenseits des M3-Modells beschreibt MOF die Mittel, um Modelle und Metamodellen durch Definition zu erstellen und zu manipulieren Corba Schnittstellen, die diese Operationen beschreiben. Aufgrund der Ähnlichkeiten zwischen den MOF M3-Modell- und UML-Strukturmodellen werden MOF-Metamodelle normalerweise als UML-Klassendiagramme modelliert. Ein unterstützender Standard von MOF ist Xmi, das ein XML-basierter Austauschformat für Modelle auf der M3-, M2- oder M1-Schicht definiert.
Metamodellarchitektur
MOF ist a abgeschlossen Metamodellarchitektur; Es definiert ein M3-Modell, das sich selbst entspricht. MOF erlaubt a strikt Meta-Modelling-Architektur; Jedes Modellelement auf jeder Schicht ist streng in Korrespondenz mit einem Modellelement der oben genannten Ebene. MOF bietet nur ein Mittel zur Definition der Struktur oder Zusammenfassung Syntax einer Sprache oder von Daten. Für die Definition von Metamodellen spielt MOF genau die Rolle, die diese Rolle EBNF spielt für die Definition von Programmiersprachengrammatiken. MOF ist a Domänenspezifische Sprache (DSL) zum Definieren von Metamodellen, genau wie EBNF ein DSL zur Definition von Grammatiken ist. Ähnlich wie bei EBNF könnte MOF in MOF definiert werden.
Kurz gesagt, MOF verwendet den Begriff von MOF :: Klassen (nicht zu verwechseln mit UML :: Klassen), wie bekannt aus Objektorientierung, um Konzepte (Modellelemente) auf einem Metallschicht zu definieren. MOF kann verwendet werden, um objektorientierte Metamodellen zu definieren (als Uml zum Beispiel) sowie nicht objektorientierte Metamodellen (als a Petrischetz oder ein Internetservice Metamodell).
Ab Mai 2006 die OMG hat zwei Compliance -Punkte für MOF definiert:
Im Juni 2006 a Antrag auf Vorschlag wurde von OMG für eine dritte Variante, SMOF (Semantic MOF), ausgegeben.
Die Variante Ökore das wurde in der definiert Eclipse Modeling Framework ist mehr oder weniger auf OMGs Emof ausgerichtet.
Ein weiterer verwandter Standard ist OCL, die eine formale Sprache beschreibt, die verwendet werden kann, um Modellbeschränkungen in Bezug auf die Weise zu definieren Prädikatlogik.
Qvt, die Mittel zur Abfrage, Ansicht und Transformation von MOF-basierten Modellen einführt, ist ein sehr wichtiger Standard, der 2008 genehmigt wurde. Siehe Modelltransformationssprache Für weitere Informationen.
Internationaler Standard
MOF ist ein internationaler Standard:
- MOF 2.4.2
- ISO/IEC 19508: 2014 Informationstechnologie - Objektverwaltungsgruppe Meta Object Facility (MOF) Kern
- MOF 1.4
- ISO/IEC 19502: 2005 Informationstechnologie - Meta -Objekteinrichtung (MOF)
MOF kann als Standard zum Schreiben angesehen werden MetamodellenZum Beispiel, um die abstrakte Syntax von zu modellieren Domänenspezifische Sprachen. Kermeta ist eine Erweiterung auf MOF, die es ermöglicht, ausführbare Aktionen an Emof-Meta-Modelle anzuschließen, wodurch es möglich ist, auch eine DSL-operative Semantik zu modellieren und leicht einen Dolmetscher dafür zu erhalten.
JMI Definiert eine Java -API zur Manipulation von MOF -Modellen.
OMGs MOF ist nicht mit dem von der verwalteten Objektformat (MOF) zu verwechseln Distributed Management Task Force (DMTF) In Abschnitt 6 des CIM -Infrastrukturspezifikums für Informationsmodell (CIM), Version 2.5.0.[4]
Siehe auch
Verweise
- ^ OMGs MetaObject -Einrichtung
- ^ "Gemeinsame Einrichtungen RFP-5: Meta-Objekt-Einrichtung" (PDF). Objektverwaltungsgruppe. 2. Mai 1996. Abgerufen 14. Januar 2014.
- ^ a b "OMG Meta-Objekt-Einrichtung (MOF) Kernspezifikation, Version 2.4.1". Objektverwaltungsgruppe. p. 1. Abgerufen 17. Februar 2014.
- ^ CIM -Schnittstellenstruktur (Common Interface Model), Version 2.5.0
Weitere Lektüre
- Offizielle MOF -Spezifikation aus OMG
- Ralph Sobek, MOF -Spezifikationen Dokumente
- Johannes Ernst, Was ist Metamodelling?
- Holzpidcock, Was sind die Unterschiede zwischen einem Wortschatz, einer Taxonomie, einem Thesaurus, einer Ontologie und einem Meta-Modell?
- Anna Gerber und Kerry Raymond, MOF zum EMF und wieder zurück.
- Webendurchführbarkeit in objektorientierte Metasprachen
- MOF -Unterstützung für semantische Strukturen RFP -Anfrage nach Vorschlag zu SMOF