Software & Systems Modeling

, Volume 8, Issue 3, pp 347–364 | Cite as

Model transformation by example using inductive logic programming

  • Zoltán Balogh
  • Dániel VarróEmail author
Special Section Paper


Model transformation by example is a novel approach in model-driven software engineering to derive model transformation rules from an initial prototypical set of interrelated source and target models, which describe critical cases of the model transformation problem in a purely declarative way. In the current paper, we automate this approach using inductive logic programming (Muggleton and Raedt in J Logic Program 19-20:629–679, 1994) which aims at the inductive construction of first-order clausal theories from examples and background knowledge.


Model transformation By-example synthesis Inductive logic programming 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ade, H., Denecker, M.: AILP: Abductive inductive logic programming. In: Proceedings of the 14th International Joint Conference on Artificial Intelligence, pp. 1201–1209. Morgan Kaufmann, Montréal (1995)Google Scholar
  2. 2.
  3. 3.
    Balogh, A., Varró, D.: Advanced model transformation language constructs in the VIATRA2 framework. In: ACM Symposium on Applied Computing—Model Transformation Track (SAC 2006), pp. 1280–1287. ACM Press, Dijon (2006)Google Scholar
  4. 4.
    Bézivin J.: On the unification power of models. Softw. Syst. Model. 4(2), 171–188 (2005)CrossRefGoogle Scholar
  5. 5.
    Cicchetti, A., di Ruscio, D., Eramo, R.: Towards propagation of changes by model approximations. In: Proceedings of the 10th International Enterprise Distributed Object Computing Conference Workshops (EDOC 2006), p. 24. IEEE Computer Society. Workshop on Models of Enterprise Computing (2006)Google Scholar
  6. 6.
    Cypher, A. (ed.): Watch What I Do: Programming by Demonstration. MIT Press, Cambridge (1993)Google Scholar
  7. 7.
    De Raedt L., Lavrač N.: Multiple predicate learning in two inductive logic programming settings. J. Pure Appl. Logic 4(2), 227–254 (1996)zbMATHGoogle Scholar
  8. 8.
    Didonet Del Fabro, M., Bézivin, J., Jouault, F., Valduriez, P.: Applying generic model management to data mapping. In: Journées Bases de Données Avancés (BDA), pp. 343–355 (2005)Google Scholar
  9. 9.
    Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.): Handbook on Graph Grammars and Computing by Graph Transformation, vol. 2: Applications, Languages and Tools. World Scientific, Singapore (1999)Google Scholar
  10. 10.
    Erwig, M.: Toward the automatic derivation of XML transformations. In: First International Workshop on XML Schema and Data Management (XSDM’03), LNCS, vol. 2814, pp. 342–354. Springer, Heidelberg (2003)Google Scholar
  11. 11.
    Fabro, M.D.D., Valduriez, P.: Semi-automatic model integration using matching transformations and weaving models. In: SAC 2007: Proceedings of the 2007 ACM Symposium on Applied computing, pp. 963–970. ACM, New York (2007)Google Scholar
  12. 12.
    Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: a new graph transformation language based on UML and Java. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Proceedings of Theory and Application to Graph Transformations (TAGT’98), LNCS, vol. 1764. Springer, Heidelberg (2000)Google Scholar
  13. 13.
    Gerber, A., Lawley, M., Raymond, K., Steel, J., Wood, A.: Transformation: The missing link of MDA. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) Proceedings of ICGT 2002: First International Conference on Graph Transformation, LNCS, vol. 2505, pp. 90–105. Springer, Barcelona (2002)Google Scholar
  14. 14.
    Huszerl G., Majzik I., Pataricza A., Kosmidis K., Dal Cin M.: Quantitative analysis of UML Statechart models of dependable systems. Comput. J. 45(3), 260–277 (2002)zbMATHCrossRefGoogle Scholar
  15. 15.
    Heckel R., Küster J.M., Taentzer G.: Confluence of typed attributed graph transformation systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G.(eds) Proceedings of ICGT 2002: First International Conference on Graph Transformation, LNCS, vol. 2505, pp. 161–176. Springer, Barcelona (2002)Google Scholar
  16. 16.
    Jouault, F., Bézivin, J.: KM3: A DSL for metamodel specification. In: Proceedings of Formal Methods for Open Object-Based Distributed Systems (FMOODS 2006), LNCS, vol. 4037, pp. 171–185. Springer, Heidelberg (2006)Google Scholar
  17. 17.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Model Transformations in Practice Workshop at MODELS 2005, LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2005)Google Scholar
  18. 18.
    Königs, A., Schürr, A.: MDI—a rule-based multi-document and tool integration approach. J. Softw. Syst. Model., Special Section on Model-based Tool Integration (2006, in press)Google Scholar
  19. 19.
    Lechner S., Schrefl M.: Defining web schema transformers by example. In: Marik, V., Retschitzegger, W., Stepankova, O.(eds) DEXA, LNCS, vol. 2736, pp. 46–56. Springer, Heidelberg (2003)Google Scholar
  20. 20.
    Lowden B.G.T., Robinson J.: Constructing inter-relational rules for semantic query optimisation. In: Hameurlain, A., Cicchetti, R., Traunmüller, R.(eds) Proceedings of Database and Expert Systems Applications, 13th International Conference, DEXA 2002, Aix-en-Provence, France, 2–6 September, LNCS, vol. 2453, pp. 587–596. Springer, Heidelberg (2002)Google Scholar
  21. 21.
    Moyle S.: Using theory completion to learn a navigation control program. In: Matwin, S., Sammut, C.(eds) Proceedings of Twelfth International Conference on ILP (ILP 2002), vol. LNAI, pp. 182–197. Springer, Heidelberg (2003)Google Scholar
  22. 22.
    Muggleton S., de Raedt L.: Inductive logic programming: Theory and methods. J. Logic Program. 19-20, 629–679 (1994)CrossRefGoogle Scholar
  23. 23.
    Object Management Group. QVT: Request for Proposal for Queries, Views and Transformations.
  24. 24.
    Ono, K., Koyanagi, T., Abe, M., Hori, M.: XSLT stylesheet generation by example with WYSIWYG editing. In: Proceedings of the 2002 Symposium on Applications and the Internet (SAINT 2002), pp. 150–161. IEEE Computer Society, Washington, DC, USA (2002)Google Scholar
  25. 25.
  26. 26.
    Prover9: Automated Theorem Prover.
  27. 27.
    Repenning A., Perrone C.: Programming by example: programming by analogous examples. Commun. ACM 43(3), 90–97 (2000)CrossRefGoogle Scholar
  28. 28.
    Rozenberg, G. (eds): Handbook of Graph Grammars and Computing by Graph Transformations: Foundations. World Scientific, Singapore (1997)zbMATHGoogle Scholar
  29. 29.
    Schürr.: Specification of graph translators with triple graph grammars. In: Tinhofer, B. (ed.) Proceedings of WG94: InternationalWorkshop on Graph-Theoretic Concepts in Computer Science, LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1994)Google Scholar
  30. 30.
    Shekhar S., Hamidzadeh B., Kohli A., Coyle M.: Learning transformation rules for semantic query optimization: A data-driven approach. IEEE Trans. Knowl. Data Eng. 5(6), 950–964 (1993)CrossRefGoogle Scholar
  31. 31.
    Strommer, M., Murzek, M., Wimmer, M.: Applying model transformation by-example on business process modeling languages. In: Proceedings of Third International Workshop on Foundations and Practices of UML (ER 2007), LNCS, vol. 4802, pp. 116–125. Springer, Heidelberg (2007)Google Scholar
  32. 32.
  33. 33.
  34. 34.
    Varró, D.: Model transformation by example. In: Proceedings of Model Driven Engineering Languages and Systems (MODELS 2006), LNCS, vol. 4199, pp. 410–424. Springer, Genova (2006)Google Scholar
  35. 35.
    Varró, D., Balogh, Z.: Automating model transformation by example using inductive logic programming. In: ACM Symposium on Applied Computing—Model Transformation Track (SAC 2007). ACM Press, New York (2007)Google Scholar
  36. 36.
    Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards model transformation generation by-example. In: Proceedings of HICSS-40 Hawaii International Conference on System Sciences, p. 285. IEEE Computer Society, Hawaii, USA (2007)Google Scholar
  37. 37.
    Yan, L.L., Miller, R.J., Haas, L.M., Fagin, R.: Data-driven understanding and refinement of schema mappings. In: Proceedings of ACM SIGMOD Conference on Management of Data, pp. 485–496 (2001)Google Scholar
  38. 38.
    Zloof, M.M.: Query-by-example: the invocation and definition of tables and forms. In: Kerr, D.S. (ed.) VLDB, pp. 1–24. ACM, New York (1975)Google Scholar

Copyright information

© Springer-Verlag 2008

Authors and Affiliations

  1. 1.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsBudapestHungary
  2. 2.OptXware Research and Development LtdBudapestHungary

Personalised recommendations