Multi-amalgamated Triple Graph Grammars

  • Erhan LeblebiciEmail author
  • Anthony Anjorin
  • Andy Schürr
  • Gabriele Taentzer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9151)


Triple Graph Grammars (TGGs) are a well-known technique for rule-based specification of bidirectional model transformation. TGG rules build up consistent models simultaneously and are operationalized automatically to forward and backward rules describing single transformation steps in the respective direction. These operational rules, however, are of fixed size and cannot describe transformation steps whose size can only be determined at transformation time for concrete models. In particular, transforming an element to arbitrary many elements depending on the transformation context is not supported. To overcome this limitation, we propose the integration of the multi-amalgamation concept from classical graph transformation into TGGs. Multi-Amalgamation formalizes the combination of multiple transformations sharing a common subpart to a single transformation. For TGGs, this enables repeating certain parts of a forward or backward transformation step in a for each loop-like manner depending on concrete models at transformation time.


Triple graph grammars Amalgamation Model transformation 


  1. 1.
    Boehm, P., Fonio, H.R., Habel, A.: Amalgamation of graph transformations: a synchronization mechanism. JCSS 34(2–3), 377–408 (1987)MathSciNetGoogle Scholar
  2. 2.
    Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: JTL: a bidirectional and change propagating transformation language. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 183–202. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  3. 3.
    Ehrig, H., Ehrig, K., Ermel, C., Hermann, F., Taentzer, G.: Information preserving bidirectional model transformations. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol. 4422, pp. 72–86. Springer, Heidelberg (2007) CrossRefGoogle Scholar
  4. 4.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, Heidelberg (2006) Google Scholar
  5. 5.
    Ehrig, H., Habel, A., Kreowski, H.J., Parisi-Presicce, F.: Parallelism and concurrency in high-level replacement systems. MSCS 1(03), 361–404 (1991)MathSciNetGoogle Scholar
  6. 6.
    Ehrig, H., Kreowski, H.J.: Parallelism of manipulations in multidimensional information structures. In: Mazurkiewicz, A. (ed.) MFCS 76. LNCS, vol. 45, pp. 285–293. Springer, Heidelberg (1976)Google Scholar
  7. 7.
    Golas, U., Ehrig, H., Habel, A.: Multi-amalgamation in adhesive categories. In: Ehrig, H., Rensink, A., Rozenberg, G., Schürr, A. (eds.) ICGT 2010. LNCS, vol. 6372, pp. 346–361. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  8. 8.
    Grønmo, R., Krogdahl, S., Møller-Pedersen, B.: A collection operator for graph transformation. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 67–82. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  9. 9.
    Hidaka, S., Hu, Z., Inaba, K., Kato, H., Nakano, K.: GRoundTram: an integrated framework for developing well-behaved bidirectional model transformations. In: Alexander, P., Pasarenau, C.S., Hosking, J.G. (eds.) ASE 2011, pp. 480–483 (2011)Google Scholar
  10. 10.
    Hoffmann, B., Janssens, D., Van Eetvelde, N.: Cloning and expanding graph transformation rules for refactoring. ENTCS 152, 53–67 (2006)Google Scholar
  11. 11.
    Ikv++: Medini QVT.
  12. 12.
    Leblebici, E., Anjorin, A., Schürr, A.: Tool support for multi-amalgamated triple graph grammars. In: Parisi-Presicce, F., Westfechtel, B. (eds.) ICGT 2015. LNCS, vol. 9151, pp. 257–265. Springer, Heidelberg (2015)Google Scholar
  13. 13.
    Macedo, N., Cunha, A.: Implementing QVT-R bidirectional model transformations using alloy. In: Cortellessa, V., Varró, D. (eds.) FASE 2013 (ETAPS 2013). LNCS, vol. 7793, pp. 297–311. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  14. 14.
    OMG: QVT Specification, V1.1 (2011).
  15. 15.
    Rensink, A.: Nested quantification in graph transformation rules. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 1–13. Springer, Heidelberg (2006) CrossRefGoogle Scholar
  16. 16.
    Rensink, A., Kuperus, J.H.: Repotting the geraniums : on nested graph transformation rules. In: Boronat, A., Heckel, R. (eds.) GT-VMT 2009, ECEASST, vol. 18. EASST (2009)Google Scholar
  17. 17.
    Schürr, A.: Specification of graph translators with triple graph grammars. In: Tinhofer, G., Schmidt, G., Ernst, W.M. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1994)Google Scholar
  18. 18.
    Schürr, A.: Programmed graph replacement systems. In: Rozenberg, G. (ed.) Handbook on Graph Grammars: Foundations, pp. 479–546. World Scientific (1997)Google Scholar
  19. 19.
    Taentzer, G.: Parallel and Distributed Graph Transformation : Formal Description and Application to Communication-Based Systems. Ph.D. thesis (1996)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Erhan Leblebici
    • 1
    Email author
  • Anthony Anjorin
    • 1
  • Andy Schürr
    • 1
  • Gabriele Taentzer
    • 2
  1. 1.Technische Universität DarmstadtDarmstadtGermany
  2. 2.Philipps-Universität MarburgMarburgGermany

Personalised recommendations