Meta Meta Languages and Models

Meta Languages to define Languages and Meta Models to create Models

Meta, Metameta, and Metametameta Languages and Models

The Subject is part of the real world to be described by a Language or modelled by a model.

Meta, Metameta, and Metametameta Languages and Models

The Language or Model is an abstract representation of the real world.

Meta, Metameta, and Metametameta Languages and Models

The Meta Language or Meta Model is used to create languages or models.

Meta, Metameta, and Metametameta Languages and Models

The Metameta Language or Metameta Model is used to create meta languages or meta models.

Meta, Metameta, and Metametameta Languages and Models

The Metameta Language or Metameta Model is used to create meta languages or meta models.

Featured

Concepts

About Meta Meta Modelling

Login Form

Meta Meta Modelling in the Literature

EIA/CDIF and Metametamodels

EIA/CDIF and Metametamodels

The idea of a metametamodel appears in the effort to standardize the exchange of model data between different CASE (computer assisted software engineering) tools. This resulted in an EIA/CDIF (Electronic Industries Alliance/CASE Data Interchange Format) architecture framework "...which basically consisted of the meta-metamodel, which defines the concepts available for creating EIA/CDIF metamodels" (Flatscher, 2002).

The EIA/CDIF metametamodel (denoted in their publications as a meta-metamodel) and related models follows a scheme similar to that used by UML/MOF. It has 4 layers: M0, M1, M2, M3. M0 is referred to as 'user data', with M3 the metametamodel.

The metametamodel contains several 'objects':

  • MetaObject
  • SubjectArea
  • CollectableMetaObject
  • AttributableMetaObject
  • MetaAttribute
  • MetaEntity
  • MetaRelationship

Several relations:

  • IsUsedIn
  • IsLocalMetaAttributeOf
  • HasSubtype
  • HasSource
  • HasDestination
  • [there are also unnamed hierarchical indicated relationships]

In addition to the objects and relations, several of the objects are indicated as having properties (for example, MetaObject is shown as able to have the properties Aliases, CDIF MetaIdentifier, Constraints, Description, Name, and Usage).

Several standardized metamodels have been defined for EIA/CDIF.

As with the case of the UML use of metametamodel, the EIA/CDIF also seems muddled. What is shown as the metametamodel looks much more like a metamodel because it has multiple instantiations of higher-order objects which could be described as OBJECT, PROPERTY, and RELATIONSHIP (as used above to classify the M3 contents).

Various ISO standards have evolved from the EIA/CDIF framework.

References

Flatscher, Rony G., (2002), "Metamodeling in EIA/CDIF---meta-metamodel and metamodels" in ACM Transactions on Modeling and Computer Simulation Volume 12 Issue 4, October 2002 pp 322-342.