Model Transformation By-Example: An Algorithm for Generating Many-to-Many Transformation Rules in Several Model Transformation Languages

  • Iván García-Magariño
  • Jorge J. Gómez-Sanz
  • Rubén Fuentes-Fernández
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5563)


Practitioners of model-driven engineering usually find that producing model transformations still requires much effort. The Model Transformation By-Example (MTBE) approach softens this problem by means of the automated creation of model transformations from pairs of source and target model examples. However, the current techniques and tools for MTBE are limited in the sense that they can only produce transformations rules that are limited to just one element in some of the patterns. In addition, some transformation languages cannot directly represent many-to-many transformation rules. To overcome both limitations, this paper presents a MTBE algorithm, that can generate many-to-many rules in several transformation languages even if the transformation language cannot directly represent these kinds of rules. In particular, the implementation of this algorithm with the ATL language is available for practitioners, and it has already generated several MTs that are applied in software development. Finally, the paper compares this algorithm with existing techniques for MTBE.


Model-driven engineering model-driven development model transformations model-transformation by-example algorithm 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Allilaire, F., Bézivin, J., Jouault, F., Kurtev, I.: ATL-eclipse support for model transformation. In: Proceedings of the Eclipse Technology eXchange workshop (eTX) at the ECOOP 2006 Conference, Nantes, France (2006) Google Scholar
  2. 2.
    Budinsky, F., Steinberg, D., Merks, E., Ellersick, R., Grose, T.J.: Eclipse Modelling Framework: Developer’s Guide. Addison Wesley, Reading (2003)Google Scholar
  3. 3.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal 45(3), 621–645 (2006)CrossRefGoogle Scholar
  4. 4.
    García-Magariño, I., Gómez-Sanz, J.J., Fuentes-Fernández., R.: INGENIAS Development Assisted with Model Transformation By-Example: A Practical Case. In: 7th International Conference on Practical Applications of Agents and Multi-Agent Systems, PAAMS 2009 (2009) (papers section),
  5. 5.
    García-Magariño, I., Rougemaille, S., Fuentes-Fernández, R., Migeon, F., Gleizes, M.-P., Gómez-Sanz, J.J.: A Tool for Generating Model Transformations By-Example in Multi-Agent Systems. In: 7th International Conference on Practical Applications of Agents and Multi-Agent Systems, PAAMS 2009 (2009) (papers section),
  6. 6.
    Grasia web: (in Software → MTGenerator section)
  7. 7.
    Jouault, F., Kurtev, I.: Transforming Models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Krishnamurthi, S., Gray, K.E., Graunke, P.T.: Transformation-by-Example for XML. In: Pontelli, E., Santos Costa, V. (eds.) PADL 2000. LNCS, vol. 1753, p. 249. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  9. 9.
    Lawley, M., Steel, J.: Practical Declarative Model Transformation with Tefkat. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 139–150. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    OMG. Meta Object Facility(MOF) 2.0 Query/View/Transformation Specification. Final Adopted Specification. Object Management Group (05-11-01) (November 2005)Google Scholar
  11. 11.
    Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003)CrossRefGoogle Scholar
  12. 12.
    Siikarla, M., Laitkorpi, M., Selonen, P., Systä, T.: Transformations Have to be Developed ReST Assured. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 1–15. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Varro, D.: Model transformation by example. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 410–424. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  14. 14.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Science of Computer Programming 68(3), 187–207 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Varró, D., Balogh, Z.: Automating model transformation by example using inductive logic programming. In: Proceedings of the 2007 ACM symposium on Applied computing, pp. 978–984 (2007)Google Scholar
  16. 16.
    Warmer, J.B., Kleppe, A.G.: The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley Professional, Reading (2003)Google Scholar
  17. 17.
    Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards Model Transformation By-Example. In: Proceedings of the 40th Annual Hawaii International Conference on System Sciences, vol. 40(10), p. 4770 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Iván García-Magariño
    • 1
  • Jorge J. Gómez-Sanz
    • 1
  • Rubén Fuentes-Fernández
    • 1
  1. 1.Software Engineering and Artificial Intelligence Facultad de InformáticaUniversidad Complutense de MadridSpain

Personalised recommendations