Specialisation of Metamodels Using Metamodel Types

  • Henning BergEmail author
  • Birger Møller-Pedersen
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 506)


In order to be able to specialise metamodels and thereby enhance reusability of metamodels, we introduce the notions of metamodel types and subtypes. Model-driven engineering considers models and metamodels as first-class entities, however, there has not been much work on how to type models or metamodels. In this paper we discuss how a metamodel can be enclosed within a class and how this enclosing class defines the type for the metamodel. This allows us to use established object-oriented mechanisms on the metamodel level and supports specialisation of metamodels.


Metamodelling Typing Subtyping Domain-specific modelling 


  1. 1.
    Caskurlu, B.: Model driven engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, p. 286. Springer, Heidelberg (2002) CrossRefGoogle Scholar
  2. 2.
    Kühne, T.: An observer-based notion of model inheritance. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 31–45. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  3. 3.
    Kühne, T.: Matters of (Meta-) modeling. Softw. Syst. Model. 5(4), 387–394 (2006)CrossRefGoogle Scholar
  4. 4.
    Steel, J., Jézéquel, J.-M.: On model typing. Softw. Syst. Model. 6(4), 401–413 (2007)CrossRefGoogle Scholar
  5. 5.
    Didonet Del Fabro, M., Bézivin, J., Valduriez, P.: Weaving models with the eclipse AMW plugin. In: Eclipse Modeling Symposium, Eclipse Summit Europe (2006). AMW+plugin.pdf
  6. 6.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Merging models with the epsilon merging language (EML). In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006) CrossRefGoogle Scholar
  7. 7.
    Groher, I., Voelter, M.: XWeave - models and aspects in concert. In: 10th International Workshop on Aspect-Oriented Modeling (AOM 2007), pp. 35–40. ACM Press (2007)Google Scholar
  8. 8.
    Fleurey, F., Baudry, B., France, R.B., Ghosh, S.: A generic approach for automatic model composition. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 7–15. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  9. 9.
    Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., Jézéquel, J.-M.: Weaving variability into domain metamodels. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 690–705. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  10. 10.
    Morin, B., Klein, J., Barais, O.: A generic weaver for supporting product lines. In: 13th International Workshop on Early Aspects (EA 2008), pp. 11–18. ACM Press (2008)Google Scholar
  11. 11.
    The Eclipse Foundation: Eclipse Modeling Framework (EMF).
  12. 12.
    Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving executability into object-oriented meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005) CrossRefGoogle Scholar
  13. 13.
    The Eclipse Foundation: Epsilon Object Language (EOL).
  14. 14.
    Object Management Group: Meta Object Facility (MOF) Core Specification.
  15. 15.
    Monperrus, M., Beugnard, A., Champeau, J.: A definition of abstraction level for metamodels. In: 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS 2009), pp. 315–320. IEEE Computer Society (2009)Google Scholar
  16. 16.
    Favre, J-M.: Towards a basic theory to model model driven engineering. In: 3rd International Workshop on Software Model Engineering (WISME 2004) (2004)Google Scholar
  17. 17.
    Cho, H., Gray, J.: Design patterns for metamodels. In: SPLASH 2011 Workshops Proceedings, pp. 25–32. ACM Press (2011)Google Scholar
  18. 18.
    Liskov, B.H., Wing, J.M.: A behavioral notion of subtyping. ACM Trans. Program. Lang. Syst. 16(6), 1811–1841 (1994)CrossRefGoogle Scholar
  19. 19.
    Madsen, O.L., Møller-Pedersen, B.: Virtual classes - a powerful mechanism in object-oriented programming. In: Proceedings of OOPSLA 1989. ACM (1989)Google Scholar
  20. 20.
    Berg, H., Møller-Pedersen, B., Krogdahl, S.: Advancing generic metamodels. In: SPLASH 2011 Workshops Proceedings, pp. 19–24. ACM Press (2011)Google Scholar
  21. 21.
    Berg, H., Møller-Pedersen, B.: Type-safe symmetric composition of metamodels using templates. In: Haugen, Ø., Reed, R., Gotzhein, R. (eds.) SAM 2012. LNCS, vol. 7744, pp. 160–178. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  22. 22.
    Guy, C., Combemale, B., Derrien, S., Steel, J.R.H., Jézéquel, J.-M.: On model subtyping. In: Vallecillo, A., Tolvanen, J.-P., Kindler, E., Störrle, H., Kolovos, D. (eds.) ECMFA 2012. LNCS, vol. 7349, pp. 400–415. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  23. 23.
    de Lara, J., Guerra, E.: From Types to Type Requirements: Genericity for Model-Driven Engineering. In: Software and Systems Modeling. Springer (2011)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Informatics, Faculty of Mathematics and Natural SciencesUniversity of OsloOsloNorway

Personalised recommendations