Melanie – Multi-level Modeling and Ontology Engineering
University of Mannheim
68131 Mannheim, Germany
University of Mannheim
68131 Mannheim, Germany
Multi-level modeling based on deep instantiation has at-
tracted growing interest over the last few years as a bet-
ter way of creating and organizing models capturing prob-
lem domains featuring more than one classiﬁcation level.
However, until recently the approach has lacked practical
tool support. This work introduces Melanie, a new Multi-
Level Modeling and Ontology Engineering Environment,
that has been speciﬁcally developed to support multi-level
modeling as well as other important new modeling use cases
such as uniﬁed exploratory/constructive modeling, symbi-
otic domain-speciﬁc/general purpose languages and interac-
tive (meta)modeling. This work brieﬂy explains the mo-
tivations and goals behind Melanie and provides a short
overview of its features and architecture.
Categories and Subject Descriptors
D2.2 [Design Tools and Techniques]: Computer-aided
software engineering (CASE)
Melanie, orthogonal classiﬁcation architecture, ontological
classiﬁcation, linguistic classiﬁcation.
Model-driven development (MDD) has come a long way
since it became a mainstream technology around the turn
of the Millennium and is now an indispensable part of most
modern software engineering projects. However, traditional
MDD tools based on the MOF infrastructure still have sig-
niﬁcant problems supporting even standard, mainstream mod-
eling use cases, let alone the more advanced use cases that
have emerged in recent years. The basic problem is the use
of a rigid two-level, physical tool architecture to support the
multiple, logical classiﬁcation levels that frequently occur in
applications domains (so called deep characterization).
ID*ID = '128'0
ID = '128'0
ID = '128'0
Figure 1: Melanie and its diﬀerent components.
Melanie , developed by the Software Engineering group
at the University of Mannheim, is based on a fundamentally
diﬀerent architecture that more closely aligns the logical ar-
chitecture of multi-level models with the physical architec-
ture of modeling tools. As shown in ﬁgure 1, the Orthogo-
nal Classiﬁcation Architecture (OCA)  on which Melanie
is founded achieves this by recognizing two fundamentally
distinct forms of classiﬁcation and organizing them in two
orthogonal dimensions — linguistic classiﬁcation (horizon-
tally dashed arrows) and ontological classiﬁcation (vertically
dotted arrows). This architecture not only provides inher-
ent support for deep classiﬁcation by treating all ontolog-
ical classiﬁcation levels uniformly, it also provides a natu-
ral infrastructure for new modeling uses cases such as sym-
biotic domain speciﬁc/general purpose languages, uniﬁed
exploratory/constructive modeling and interactive (meta)-
2. TOOL ARCHITECTURE
The Pan Level model (PLM) depicted in L0of ﬁgure 1 de-
ﬁnes the abstract syntax of Melanie’s basic modeling lan-
guages in the form of an ECORE metamodel. This sup-
ports the basic structural modeling features of EMOF, but
in a much simpler and level-agnostic way. Modelers can cre-
ate content at the L1level (i.e. as instances of the PLM)
using a graphical concrete syntax for the PLM known as the
Level-agnostic Modeling Language (LML) .
The logical organization of the software components mak-
ing up Melanie are illustrated in Figure 2. The core pro-
vides basic support for PLM content generation and storage
Figure 2: Melanie and its diﬀerent components.
in EMF and its rendering in LML. A second layer of com-
ponents adds additional capabilities including support for
Domain-Speciﬁc Languages (DSL), reasoning, transforma-
tion and model emendation. Third party developers can
also add extra capabilities in a third layer.
3. ADVANCED CAPABILITIES
Reasoning and checking services. Melanie supports both
exploratory and constructuve reasoning/checking services.
These are divided into ontology validation and ontology pop-
ulation services. The former are concerned with checking
an ontology for correctness at diﬀerent levels of granularity,
such as checking whether two clabjects fulﬁll certain classiﬁ-
cation criteria or whether a complete ontology is valid. The
latter include features to infer types from instances or iden-
tify inheritance relationships between model elements based
on their properties (i.e. subsumption).
Graphical Domain-Speciﬁc Languages. The graphical DSL
support allows the default graphical rendering of multi-level
models to be augmented with custom notations. New graph-
ical symbols can be deﬁned using a tree-based model editor
based on concepts supported by common GUI programing
frameworks such as SWT or GMF. The particular symbol
used to render a model element is selected through a visu-
alization search algorithm using the inheritance and classi-
ﬁcation hierarchies. If no custom visualization information
is found the default general-purpose LML rendering is used.
By having two visualizations available at one time — DSL
and GPL — it is possible to view some parts of a model
in the DSL and others in the LML as needed. This feature
is called symbiotic language support  because the gen-
eral and domain-speciﬁc notations of a model reinforce each
Textual Domain-speciﬁc Languages. The textual DSL sup-
port allows the default textual rendering of multi-level mod-
els to be augmented with a custom notation. A rendering
search algorithm is applied in the same way as for the graph-
ical rendering to ﬁnd the desired textual rendering. The
textual and graphical renderings of models are of equal im-
portance and are fully symbiotic — that is, they are fully
interchangeable and useable simultaneously.
Emendation. Interactive multi-level (meta)modeling  is
a two-edged sword — it allows changes at any level in an
ontology to have an immediate eﬀect, but also allows incon-
sistencies to arise easily. Without automated emendation
support, after each change modelers would have to manually
check all model-elements for correctness and apply changes
by hand to keep all parts of an ontology consistent. This
can quickly become unmanageable even for small ontologies.
The emendation module therefore continually monitors the
ontology and as soon as a change occurs that eﬀects more
than the currently edited model element it suggests addi-
tional changes to keep the ontology consistent.
Multi-level aware Transformation Support. Traditional two-
level modeling environments such as EMF only allow model-
ers to work with two model levels at a given time, usually the
meta-model and the meta-model instance, and only support
operations on the lower level. This makes the deﬁnition of
constraints and transformations on multi-level content much
more complex than necessary. Melanie therefore incorpo-
rates an ATL adapter  that supports multi-level aware
transformations. This not only signiﬁcantly simpliﬁes the
deﬁnition of multi-level to multi-level transformations but
also of transformations between two-level and multi-level
models that are important for supporting interoperability
with traditional modeling formats.
The Melanie tool described in this extended abstract is the
only OCA based modeling tool supporting the graphical
deﬁnition and manipulation of multi-level model content.
At the time of writing there are several other OCA based
tools but these only support textual visualization of multi-
level models. To our knowledge Melanie is also the only
modeling tool that currently supports integrated construc-
tive/exploratory reasoning services, symbiotic languages and
interactive (meta)modeling. Since it is built using the Eclipse
EMF framework, all the standard languages and tools avail-
able in Eclipse can be applied to Melanie models, but in a
non-level-agnostic way. We plan to continue expanding and
enhancing the range of services supported by Melanie, and to
complement the LML with a full range of multi-level aware
model manipulation languages, such as constraint, transfor-
mation and action languages.
 C. Atkinson, R. Gerbig, and B. Kennel. On-the-ﬂy
emendation of multi-level models. In Modelling
Foundations and Applications. Springer Berlin /
 C. Atkinson, R. Gerbig, and B. Kennel. Symbiotic
general-purpose and domain-speciﬁc languages. In
Proceedings of the 2012 International Conference on
Software Engineering, 2012.
 C. Atkinson, R. Gerbig, and C. Tunjic. Towards
multi-level aware model transformations. In Theory and
Practice of Model Transformations. Springer Berlin /
 C. Atkinson, M. Gutheil, and B. Kennel. A ﬂexible
infrastructure for multilevel language engineering.
IEEE Transactions on Software Engineering, 2009.
 C. Atkinson, B. Kennel, and B. Goß. The level-agnostic
modeling language. In Software Language Engineering.
Springer Berlin / Heidelberg, 2011.
 University of Mannheim - Software Engineering Group.
MelAniE - Multi-levEl modeLing And oNtology