Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Note that the current version of EMOF/Kermeta does not support nesting of classes as discussed in this paper.
References
Caskurlu, B.: Model driven engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, p. 286. Springer, Heidelberg (2002)
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)
Kühne, T.: Matters of (Meta-) modeling. Softw. Syst. Model. 5(4), 387–394 (2006)
Steel, J., Jézéquel, J.-M.: On model typing. Softw. Syst. Model. 6(4), 401–413 (2007)
Didonet Del Fabro, M., Bézivin, J., Valduriez, P.: Weaving models with the eclipse AMW plugin. In: Eclipse Modeling Symposium, Eclipse Summit Europe (2006). http://ssei.pbworks.com/f/Del+Fabro.Weaving+Models+with+the+Eclipse+ AMW+plugin.pdf
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)
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)
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)
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)
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)
The Eclipse Foundation: Eclipse Modeling Framework (EMF). http://www.eclipse.org/modeling/emf
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)
The Eclipse Foundation: Epsilon Object Language (EOL). http://www.eclipse.org/epsilon/doc/eol
Object Management Group: Meta Object Facility (MOF) Core Specification. http://www.omg.org/mof
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)
Favre, J-M.: Towards a basic theory to model model driven engineering. In: 3rd International Workshop on Software Model Engineering (WISME 2004) (2004)
Cho, H., Gray, J.: Design patterns for metamodels. In: SPLASH 2011 Workshops Proceedings, pp. 25–32. ACM Press (2011)
Liskov, B.H., Wing, J.M.: A behavioral notion of subtyping. ACM Trans. Program. Lang. Syst. 16(6), 1811–1841 (1994)
Madsen, O.L., Møller-Pedersen, B.: Virtual classes - a powerful mechanism in object-oriented programming. In: Proceedings of OOPSLA 1989. ACM (1989)
Berg, H., Møller-Pedersen, B., Krogdahl, S.: Advancing generic metamodels. In: SPLASH 2011 Workshops Proceedings, pp. 19–24. ACM Press (2011)
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)
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)
de Lara, J., Guerra, E.: From Types to Type Requirements: Genericity for Model-Driven Engineering. In: Software and Systems Modeling. Springer (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Berg, H., Møller-Pedersen, B. (2015). Specialisation of Metamodels Using Metamodel Types. In: Hammoudi, S., Pires, L., Filipe, J., das Neves, R. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2014. Communications in Computer and Information Science, vol 506. Springer, Cham. https://doi.org/10.1007/978-3-319-25156-1_6
Download citation
DOI: https://doi.org/10.1007/978-3-319-25156-1_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-25155-4
Online ISBN: 978-3-319-25156-1
eBook Packages: Computer ScienceComputer Science (R0)