- Model transformation language
-
A model transformation language in systems and software engineering is a language for model transformation.
Contents
Overview
The notion of model transformation is of central importance to information technology. A software system may be seen as a set of information transformations. The Unix system itself may be viewed as a framework to use and to build transformation programs (filters) from basic transformation languages like grep, sed, awk, perl, etc. A software development process itself may also be considered as a chain of transformation from abstract requirements to executable systems.
Some transformation languages exhibit the characteristic of homoiconicity, in which the language used for expressing a data model is also related to or identical to the transformation language. The most noteworthy example is the relationship between XML and XSLT. This kind of emphasis is viewed by some as having a favorable compatibility with model-driven engineering.
Available transformation languages
- ATL : a transformation language developed by the INRIA
- Beanbag (see [1]) : an operation-based language for establishing consistency over data incrementally
- GReAT : a transformation language available in the GME
- Epsilon family (see [2]) : a model management platform that provides transformation languages for model-to-model, model-to-text, update-in-place, and model merging transformations.
- JTL : a bidirectional model transformation language specifically designed to support non-bijective transformations and change propagation (see [3]).
- Kermeta : a general purpose modeling and programming language, also able to perform transformations
- Lx family (see [4]) : a set of low-level transformation languages
- M2M is the Eclipse implementation of the OMG QVT standard
- Mia-TL : a transformation language developed by Mia-Software
- MOF Model to Text Transformation Language: the OMG has defined a standard for expressing M2T transformations
- MOLA (see [5]) : a graphical high-level transformation language built in upon Lx.
- MT : a transformation language developed at King's College, London (UK) (based on Converge PL)
- QVT : the OMG has defined a standard for expressing M2M transformations, called MOF/QVT or in short QVT.
- SiTra [6] : a pragmatic transformation approach based on using a standard programming language, e.g. Java, C#
- Stratego/XT : a transformation language based on rewriting with programmable strategies
- Tefkat : a transformation language and a model transformation engine
- VIATRA : a framework for transformation-based verification and validation environment
See also
- Data transformation
- Domain-specific language (DSL)
- Filter (software)
- Model-driven engineering (MDE)
- Model-driven architecture (MDA)
- Template processor
- Transformation language
- Graph Transformation
- Web template
- XSLT - a standard language
References
- OMG MDA Guide MDA Guide Version 1.0.1
- Model-Driven Architecture: Vision, Standards And Emerging Technologies at omg.org
- An Introduction to Model Driven Architecture at ibm.com
- From Object Composition to Model Transformation with the MDA at omg.org
- Mens, T, and Van Gorp, P: A Taxonomy of Model Transformation, Electronic Notes in Theoretical Computer Science, Volume 152, 27 March 2006, Pages 125-142
- Czarnecki, K, and Helsen, S : Classification of Model Transformation Approaches. In: Proceedings of the OOPSLA'03 Workshop on the Generative Techniques in the Context Of Model-Driven Architecture, Anaheim, California, USA. Webpublished.
- Gronmo, R, and Oldevik, J : An Empirical Study of the UML Model Transformation Tool (UMT). [7]
Further reading
- The MDA Journal: Model Driven Architecture Straight From The Masters
- Model Driven Architecture: Applying MDA to Enterprise Computing, David S. Frankel, John Wiley & Sons, ISBN 0-471-31920-1
External links
Categories:- Systems engineering
- Specification languages
Wikimedia Foundation. 2010.