Title
Adding rule-based model transformation to modelling languages in MetaEdit+ Adding rule-based model transformation to modelling languages in MetaEdit+
Author
Faculty/Department
Faculty of Sciences. Mathematics and Computer Science
Publication type
article
Publication
Berlin :Technische Universitšt Berlin ,
Subject
Computer. Automation
Source (journal)
Electronic communications of the EASST. - Berlin, 2006, currens
Volume/pages
54(2012) , p. 1-12
ISSN
1863-2122
Carrier
E
Target language
English (eng)
Affiliation
University of Antwerp
Abstract
MetaEdit+ is a commercial tool by MetaCase for creating domain-specific, syntax-directed visual modelling environments. MetaEdit+ synthesizes such environments from user-provided metamodels and contains a Generator Editor for code/report generation. An API is provided to allow external manipulation of models through SOAP. Currently, the MetaEdit+ tool does not natively support rule-based model-to-model transformation. Such transformations are useful as they allow domain experts to intuitively (using domain-specific notations) model either operational semantics (a simulator) or denotational semantics (through model-to-model transformation onto a model in a known formalism) of a modelling language. We will demonstrate how to add rule-based operational semantics to modelling languages in MetaEdit+. In our approach, transformation rules are visually created in MetaEdit+. The rule editor is synthesized using modified versions of the original language's metamodel. This modification is performed in a structured fashion using a process called RAMification. Both the model and the rules are exported from MetaEdit+ to Python code. This code is combined with Py-T-Core, our library of transformation language primitives, to apply the rules on the model. Our demonstration has a client-server architecture, with the MetaEdit+ visual modelling environment as the client and the transformation engine as the server. After each transformation step, in-place changes to the model are propagated to MetaEdit+ for visualization using the SOAP API. A simple (manufacturing) Production System modelling language is used as an example.
Full text (open access)
https://repository.uantwerpen.be/docman/irua/fbeacc/eb667185.pdf
Handle