Model transformation language: Difference between revisions

Content deleted Content added
m Java linkage
m repaired link(s) to disambiguation pages (you can help) - JTL
Line 4:
The notion of [[model transformation]] is central to [[Model-driven_engineering|model-driven development]]. A model transformation, which is essentially a program which operates on models, can be written in a general-purpose programming language, such as [[Java (programming language)|Java]]. However, special-purpose model transformation languages can offer advantages, such as syntax that makes it easy to refer to model elements. For writing bidirectional model transformations, which maintain consistency between two or more models, a specialist bidirectional model transformation language is particularly important, because it can help avoid the duplication that would result from writing each direction of the transformation separately.
 
Currently, most model transformation languages are being developed in academia. The [[Object_Management_Group|OMG]] has standardised a family of model transformation languages called [[QVT]], but the field is still immature .<ref name="FranceRumpe"/>
.
 
== Available transformation languages ==
Line 12 ⟶ 11:
* [[GReAT]] : a transformation language available in the [[Generic Modeling Environment|GME]]
* Epsilon family (see [http://www.eclipse.org/epsilon]) : a model management platform that provides transformation languages for model-to-model, model-to-text, update-in-place, migration and model merging transformations.
* [[Janus Transformation Language|JTL]] : a bidirectional model transformation language specifically designed to support non-bijective transformations and change propagation (see [http://jtl.di.univaq.it/]).
* [[Kermeta]] : a general purpose modeling and programming language, also able to perform transformations
* Lx family (see [http://lx.mii.lu.lv/]) : a set of low-level transformation languages