KM3: A DSL for Metamodel Specification

Jouault, F.; Bezivin, J.
Jouault, F
Bezivin, J
Proc. of 8th IFIP Intl. Conf. on Formal Methods for Open Object-Based Distributed Systems, LNCS 4037, 171-185
Citations range: 
100 - 499
Jouault2006KM3ADSLforMetamodel.pdf454.07 KB

We consider in this paper that a DSL (Domain Specific Language)
may be defined by a set of models. A typical DSL is the ATLAS
Transformation Language (ATL). An ATL program transforms a source
model (conforming to a source metamodel) into a target model (conforming
to a target metamodel). Being itself a model, the transformation
program conforms to the ATL metamodel. The notion of metamodel is
thus used to define the source DSL, the target DSL and the transformation
DSL itself. As a consequence we can see that agility to define
metamodels and precision of these definitions is of paramount importance
in any model engineering activity. In order to fullfill the goals of
agility and precision in the definition of our metamodels, we have been
using a notation called KM3 (Kernel MetaMetaModel). KM3 may itself
be considered as a DSL for describing metamodels. This paper presents
the rationale for using KM3, some examples of its use and a precise
definition of the language.