Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Meta-Object Facility
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Metamodeling architecture == MOF is a ''closed'' metamodeling architecture; it defines an M3-model, which conforms to itself. MOF allows a ''strict'' meta-modeling architecture; every model element on every layer is strictly in correspondence with a model element of the layer above. MOF only provides a means to define the structure, or [[abstract syntax]] of a language or of data. For defining metamodels, MOF plays exactly the role that [[EBNF]] plays for defining programming language grammars. MOF is a [[Domain Specific Language]] (DSL) used to define metamodels, just as EBNF is a DSL for defining grammars. Similarly to EBNF, MOF could be defined in MOF. In short, MOF uses the notion of '''MOF::Classes''' (not to be confused with '''UML::Classes'''), as known from [[Object-oriented programming|object orientation]], to define concepts (model elements) on a metalayer. MOF may be used to define object-oriented metamodels (as [[Unified Modeling Language|UML]] for example) as well as non object-oriented metamodels (e.g. a [[Petri net]] or a [[Web Service]] metamodel). As of May 2006, the [[Object Management Group|OMG]] has defined two compliance points for MOF: *EMOF for Essential MOF<ref name=mof241>{{cite web|title=OMG Meta-Object Facility (MOF) Core Specification, Version 2.4.1|url=http://www.omg.org/spec/MOF/2.4.1/PDF|publisher=[[Object Management Group]]|access-date=17 February 2014|page=1}}</ref> *CMOF for Complete MOF<ref name=mof241/> In June 2006, a ''request for proposal'' was issued by OMG for a third variant, SMOF (Semantic MOF). The variant '''ECore''' that has been defined in the '''[[Eclipse Modeling Framework]]''' is more or less aligned on OMG's EMOF. Another related standard is [[Object Constraint Language|OCL]], which describes a formal language that can be used to define model constraints in terms of [[predicate logic]]. [[QVT]], which introduces means to query, view and transform MOF-based models, is a very important standard, approved in 2008. See [[Model Transformation Language]] for further information.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)