one level, and using it on the level below. The new
element may itself have semantics of a set of el-
ements, and can then be instantiated further. The
InstanceSpecification of UML does not spoil
this approach, it just defines a subset of the instances
of the classifier specifying fixed slot values together
with other constraints.
For simplicity of discussing platforms that support
the MDA, we have introduced the concept of an ab-
stracted MDA platform implementation that we call
the MOF-VM – a MOF virtual machine. MOF-VM
does not come with a native presentation language. It
is common to use UML notation. However, it is im-
portant to notice that UML is used as a notation for the
MOF-VM platform, not as an independent language.
The semantics of the MDA is formalised by a
specification of the semantics of the MDA platform.
In the same way as the Java semantics may be for-
malised through a specification of the Java VM, we
can think of the MOF-VM as an interpreter of MOF-
based models. Like Java is transformed into byte-
code for instantiation and execution in the Java-VM,
the instantiation semantics of MOF can be handled
with a mapping of model elements to MOF-VM
classes to use the built-in instantiation of MOF-VM.
We have pursued the language design perspective
here. If UML was used primarily as a notation, the se-
mantics could be disregarded and its role in the MDA
architecture might take different forms than what we
have described. This may lead to a different view
on the MDA which is based on a different perspec-
tive where semantics are less important. For language
modelling, however, a uniform instantiation seman-
tics between levels is essential.
REFERENCES
Atkinson, C. (1997). Meta-modeling for distributed ob-
ject environments. In In Enterprise Distributed Object
Computing, pages 90–101. Published by IEEE Com-
puter Society.
Atkinson, C. and Kühne, T. (2000). Meta-level indepen-
dent modelling. In International Workshop on Model
Engineering at 14th European Conference on Object-
Oriented Programming.
Atkinson, C. and Kühne, T. (2001). The essence of multi-
level metamodeling. In UML 2001-The Unified Mod-
eling Language. Modeling Languages, Concepts, and
Tools, pages 19–33. Springer Berlin Heidelberg.
Atkinson, C. and Kühne, T. (2002). Rearchitecting the
UML infrastructure. ACM Transactions on Computer
Systems (TOCS),, 12(4):290–321.
Atkinson, C. and Kühne, T. (2003). Model-driven develop-
ment: A metamodeling foundation. Software, IEEE.
Atkinson, C. and Kühne, T. (2005). Concepts for comparing
modeling tool architectures. In MoDELS, pages 398–
413.
Bézivin, J. and Gerbé, O. (2001). Towards a Precise Defi-
nition of the OMG/MDA Framework. Proceedings of
ASE’01, Automated Software Engineering.
Editor, O. (2014). OMG Meta Object Facility (MOF) Core
Specification Version 2.4.2. Technical report, Object
Management Group.
Eriksson, O., Henderson-Sellers, B., and Ågerfalk, P. J.
(2013). Ontological and linguistic metamodelling re-
visited: A language use approach. Information and
Software Technology.
Favre, J.-M. (2003). Meta-model and model co-evolution
within the 3D software space. In Proceedings of
ELISA 2003.
Favre, J.-M. (2004). Foundations of meta-pyramids: Lan-
guages vs. metamodels - episode ii: Story of thotus the
baboon1. In Language Engineering for Model-Driven
Software Development.
Gitzel, R., Ott, I., and Schader, M. (2007). Ontological Ex-
tension to the MOF Metamodel as a Basis for Code
Generation. Comput. J., 50(1):93–115.
Hesse, W. (2006). More matters on (meta-)modelling: re-
marks on Thomas Kühne matters. Software and Sys-
tems Modeling (SoSyM), 5(4):387–394.
Kleppe, A. and Warmer, J. (2003). MDA Explained.
Addison–Wesley.
Kühne, T. (2006). Matters of (meta-) modeling. Software
and Systems Modeling (SoSyM), 5(4):369–385.
Mu, L., Gjøsæter, T., Prinz, A., and Tveit, M. S. (2010).
Specification of modelling languages in a flexible
meta-model architecture. In Software Architecture,
4th European Conference, ECSA 2010, Copenhagen,
Denmark, August 23-26, 2010. Companion Volume,
pages 302–308.
Nytun, J. P. (2010). Consistency Modeling in a Multi-Model
Architecture. PhD thesis, University of Oslo.
OMG Editor (2011). Unified Modeling Language: Infras-
tructure version 2.4.1 (OMG Document formal/2011-
08-05). OMG Document. Published by Object Man-
agement Group, http://www.omg.org.
Rumbaugh, J., Jacobson, I., and Booch, G. (2005). The
Unified Model Language Reference Manual, second
Edition. Published by Pearson Education, Inc.
Skene, J. (2007). Language Support for Service-Level
Agreements for Application-Service Provision. PhD
thesis, University of London. Accessed January, 2015:
http://eprints.ucl.ac.uk/5607/1/5607.pdf.
Tony Clark, Andy Evans, P. S. and Williams, J. (2004).
Applied Metamodelling. A Foundation for Language
Driven Development. Xactium. Available at
http://www.xactium.com.
Wikipedia (2015). Meta-object facility — Wikipedia, the
free encyclopedia. [Online; accessed January 2015].
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
144