Information Preserving Bidirectional Model Transformations

  • Hartmut Ehrig
  • Karsten Ehrig
  • Claudia Ermel
  • Frank Hermann
  • Gabriele Taentzer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4422)


Within model-driven software development, model transformation has become a key activity. It refers to a variety of operations modifying a model for various purposes such as analysis, optimization, and code generation. Most of these transformations need to be bidirectional to e.g. report analysis results, or keep coherence between models. In several application-oriented papers it has been shown that triple graph grammars are a promising approach to bidirectional model transformations. But up to now, there is no formal result showing under which condition corresponding forward and backward transformations are inverse to each other in the sense of information preservation. This problem is solved in this paper based on general results for the theory of algebraic graph transformations. The results are illustrated by a transformation of class models to relational data base models which has become a quasi-standard example for model transformation.


Model Transformation Graph Transformation Transformation Sequence Bijective Correspondence Forward Transformation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. [BRST05]
    Bézivin, J., Rumpe, B., Schürr, A., Tratt, L.: Model Transformations in Practice Workshop. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 120–127. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  2. [CH03]
    Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: On-line Proc. of the 2nd Workshop on Generative Techniques in the context of Model-Driven Architecture, Anaheim (2003)Google Scholar
  3. [EEPT06]
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. EATCS Monographs in Theoretical Computer Science. Springer, Heidelberg (2006)zbMATHGoogle Scholar
  4. [EPT04]
    Ehrig, H., Prange, U., Taentzer, G.: Fundamental Theory for Typed Attributed Graph Transformation. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 161–177. Springer, Heidelberg (2004)Google Scholar
  5. [GEMT00]
    Goedicke, M., Enders, B., Meyer, T., Taentzer, G.: Towards Integrating Multiple Perspectives by Distributed Graph Transformation. In: Münch, M., Nagl, M. (eds.) AGTIVE 1999. LNCS, vol. 1779, pp. 369–378. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  6. [KS06]
    König, A., Schürr, A.: Tool Integration with Triple Graph Grammars - A Survey. In: Heckel, R. (ed.) Proceedings of the SegraVis School on Foundations of Visual Modelling Techniques. Electronic Notes in Theoretical Computer Science, vol. 148, pp. 113–150. Elsevier, Amsterdam (2006)Google Scholar
  7. [LS05]
    Lack, S., Sobociński, P.: Adhesive and quasiadhesive categories. Theoretical Informatics and Applications 39(2), 511–546 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  8. [MB03]
    Marschall, F., Braun, P.: Model transformations for the mda with botl. In: Proc. of the Workshop on Model Driven Architecture: Foundations and Applications (MDAFA 2003), Enschede, The Netherlands, pp. 25–36 (2003)Google Scholar
  9. [MG06]
    Mens, T., Van Gorp, P.: A taxonomy of model transformation. In: Proc. International Workshop on Graph and Model Transformation (GraMoT05), Tallinn, Estonia. Electronic Notes in Theoretical Computer Science, vol. 152, Elsevier Science, Amsterdam (2006)Google Scholar
  10. [OMG05]
    OMG. MOF QVT Final Adopted Specification, 05-11-01 (2005),
  11. [Sch94]
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995)Google Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Hartmut Ehrig
    • 1
  • Karsten Ehrig
    • 2
  • Claudia Ermel
    • 1
  • Frank Hermann
    • 1
  • Gabriele Taentzer
    • 3
  1. 1.Department of Computer Science, Technical University BerlinGermany
  2. 2.Department of Computer Science, University of LeicesterUnited Kingdom
  3. 3.Department of Mathematics and Computer Science, Phillips-University MarburgGermany

Personalised recommendations