Towards Model Transformation Generation By-Example

Manuel Wimmer, Michael Strommer, Horst Kargl, Gerhard Kramler

2007 · 124 citations · 14 references

Concepts

TL;DR

Model-driven engineering has produced many metamodel‑based transformation approaches, but metamodels often omit explicit language concepts, hindering modelers from easily defining transformations. This work proposes a user‑friendly by‑example method that defines inter‑model mappings to capture semantic correspondences between concrete domain models, avoiding direct rule specification based on abstract syntax. The method generates transformation rules by applying the inter‑model mappings, which link abstract and concrete syntax elements, to produce by‑example mappings. The resulting approach enables users to create model transformations using only their knowledge of the modeling language notation, eliminating the need for detailed metamodel or transformation language expertise.

Abstract

With the advent of model-driven engineering (MDE) several model transformation approaches and languages have been developed in the previous 5 years. Most of these existing approaches are metamodel-based with metamodels representing both an abstract syntax of the corresponding modeling language and also a data structure for storing models. However, this implementation specific focus makes it difficult for modelers to develop model transformations, because metamodels do not necessarily define all language concepts explicitly which are available for notation purposes. Therefore, we propose a by-example approach for defining inter-model mappings representing semantic correspondences between concrete domain models, which is more user-friendly, then directly specifying model transformation rules or mappings based on the abstract syntax. The inter-model mappings between domain models can be used to generate model transformation rules, by-example, taking into account the already defined mapping between abstract and concrete syntax elements. With this approach the user's knowledge about the notation of the modeling language is sufficient for the definition of model transformations regarding semantic correspondences. Hence, no detailed knowledge about the metamodel and the model transformation language is required

References

14