On Model Subtyping

  • Clément Guy
  • Benoît Combemale
  • Steven Derrien
  • Jim R. H. Steel
  • Jean-Marc Jézéquel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7349)

Abstract

Various approaches have recently been proposed to ease the manipulation of models for specific purposes (e.g., automatic model adaptation or reuse of model transformations). Such approaches raise the need for a unified theory that would ease their combination, but would also outline the scope of what can be expected in terms of engineering to put model manipulation into action. In this work, we address this problem from the model substitutability point of view, through model typing. We introduce four mechanisms to achieve model substitutability, each formally defined by a subtyping relation. We then discuss how to declare and check these subtyping relations. This work provides a formal reference specification establishing a family of model-oriented type systems. These type systems enable many facilities that are well known at the programming language level. Such facilities range from abstraction, reuse and safety to impact analyses and auto-completion.

Keywords

SLE Modeling Languages Model Typing Model Substitutability 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Varró, D., Pataricza, A.: Generic and Meta-transformations for Model Transformation Engineering. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 290–304. Springer, Heidelberg (2004)Google Scholar
  2. 2.
    Cuccuru, A., Mraidha, C., Terrier, F., Gérard, S.: Templatable Metamodels for Semantic Variation Points. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol. 4530, pp. 68–82. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  3. 3.
    Steel, J., Jézéquel, J.M.: On model typing. SoSyM 6(4) (2007)Google Scholar
  4. 4.
    Sánchez Cuadrado, J., García Molina, J.: Approaches for Model Transformation Reuse: Factorization and Composition. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 168–182. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  5. 5.
    Sen, S., Moha, N., Mahé, V., Barais, O., Baudry, B., Jézéquel, J.-M.: Reusable model transformations. SoSyM 11(1) (2010)Google Scholar
  6. 6.
    de Lara, J., Guerra, E.: From types to type requirements: genericity for model-driven engineering. SoSyM (2011)Google Scholar
  7. 7.
    Sánchez Cuadrado, J., Guerra, E., de Lara, J.: Generic Model Transformations: Write Once, Reuse Everywhere. In: Cabot, J., Visser, E. (eds.) ICMT 2011. LNCS, vol. 6707, pp. 62–77. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Wimmer, M., Kusel, A., Retschitzegger, W., Schönböck, J., Schwinger, W., Cuadrado, J., Guerra, E., de Lara, J.: Reusing model transformations across heterogeneous metamodels. In: International Workshop on Multi-Paradigm Modeling (2011)Google Scholar
  9. 9.
    Kerboeuf, M., Babau, J.-P.: A DSML for reversible transformations. In: OOPSLA Workshop on Domain-Specific Modeling (2011)Google Scholar
  10. 10.
    Babau, J.-P., Kerboeuf, M.: Domain Specific Language Modeling Facilities. In: MoDELS Workshop on Models and Evolution (2011)Google Scholar
  11. 11.
    Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison-Wesley (2006)Google Scholar
  12. 12.
    Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: POPL (1977)Google Scholar
  13. 13.
    OMG: Meta Object Facility (MOF) 2.0 Core Specification (2006)Google Scholar
  14. 14.
    OMG: UML Object Constraint Language (OCL) 2.0 Specification (2003)Google Scholar
  15. 15.
    Ernst, E.: Family Polymorphism. In: Lindskov Knudsen, J. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 303–326. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Kühne, T.: On model compatibility with referees and contexts. SoSyM (2012)Google Scholar
  17. 17.
    Bruce, K.B., Schuett, A., van Gent, R., Fiech, A.: Polytoil: A type-safe polymorphic object-oriented language. ACM TOPLAS 25(2) (2003)Google Scholar
  18. 18.
    Steel, J.: Typage de modèles. PhD thesis, Université de Rennes 1 (April 2007)Google Scholar
  19. 19.
    Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schoenboeck, J., Schwinger, W.: From the Heterogeneity Jungle to Systematic Benchmarking. In: Dingel, J., Solberg, A. (eds.) MODELS 2010. LNCS, vol. 6627, pp. 150–164. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  20. 20.
    Mens, T., Gorp, P.V.: A taxonomy of model transformation. Electronic Notes in Theoretical Computer Science 152 (2006)Google Scholar
  21. 21.
    Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM TOPLAS 29(3) (2007)Google Scholar
  22. 22.
    Czarnecki, K., Foster, J.N., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.F.: Bidirectional Transformations: A Cross-Discipline Perspective. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 260–283. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  23. 23.
    Hu, Z., Schürr, A., Stevens, P., Terwilliger, J.F.: Bidirectional transformation ”bx” (dagstuhl seminar 11031). Dagstuhl Reports 1(1) (2011)Google Scholar
  24. 24.
    Jeanneret, C., Glinz, M., Baudry, B.: Estimating footprints of model operations. In: ICSE (2011)Google Scholar
  25. 25.
    Vignaga, A., Jouault, F., Bastarrica, M., Bruneliére, H.: Typing artifacts in megamodeling. SoSyM (2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Clément Guy
    • 1
  • Benoît Combemale
    • 1
  • Steven Derrien
    • 1
  • Jim R. H. Steel
    • 2
  • Jean-Marc Jézéquel
    • 1
  1. 1.University of Rennes1, IRISA/INRIAFrance
  2. 2.University of QueenslandAustralia

Personalised recommendations