Model transformation languages have matured to a point where people have started experimenting with model transformation definitions themselves in addition to the language they are written in. In addition to the transformation language properties, the properties of model transformation definitions themselves become important, such as scalability, maintainability and reusability. Composition of model transformations allows for the creation of smaller, maintainable and reusable model transformation definitions that can scale up to a larger model transformation. There are two kinds of composition for model transformations. External composition deals with chaining separate model transformations together by passing models from one transformation to another. Internal composition composes two model transformation definitions into one new model transformation, which typically requires knowledge of the transformation language. This paper focuses on internal composition for two rule-based model transformation languages. One is the ATLAS Transformation Language, which serves as our implementation vehicle. The other is the QVT Relations language, which is a standard transformation language for MOF. We propose a composition technique called module superimposition. We discuss how module superimposition interacts with other composition techniques in ATL, such as helpers, called rules and rule inheritance. Together, these techniques allow for powerful composition of entire transformation modules as well as individual transformation rules. By applying superimposition to QVT Relations, we demonstrate that our composition technique is relevant outside the ATL language as well.
[1]
Frédéric Jouault,et al.
Evaluation of rule-based modularization in model transformation languages illustrated with ATL
,
2006,
SAC '06.
[2]
Tom Mens,et al.
A Taxonomy of Model Transformation
,
2006,
GRaMoT@GPCE.
[3]
A. G. Kleppe,et al.
First European Workshop on Composition of Model Transformations - CMT 2006
,
2006
.
[4]
Jim Steel,et al.
MOF QVT final adopted specification: meta object facility (MOF) 2.0 query/view/transformation specification.
,
2005
.
[5]
Krzysztof Czarnecki,et al.
Feature-based survey of model transformation approaches
,
2006,
IBM Syst. J..
[6]
Günter Kniesel,et al.
Static composition of refactorings
,
2004,
Sci. Comput. Program..
[7]
Tom Mens,et al.
Detecting Structural Refactoring Conflicts Using Critical Pair Analysis
,
2005,
SETra@ICGT.
[8]
Lodewijk Bergmans,et al.
Composing crosscutting concerns using composition filters
,
2001,
CACM.
[9]
Frédéric Jouault,et al.
On the architectural alignment of ATL and QVT
,
2006,
SAC '06.
[10]
Ragnhild Van Der Straeten,et al.
Platform ontologies for the model-driven architecture
,
2007,
Eur. J. Inf. Syst..
[11]
Harold Ossher,et al.
Using multidimensional separation of concerns to (re)shape evolving software
,
2001,
CACM.