Abstract
Metamodelling is one of the pillars of model-driven engineering, used for language engineering and domain modelling. Even though metamodelling is traditionally based on a two-metalevel approach, several researchers have pointed out limitations of this solution and proposed an alternative deep (also called multi-level) approach to obtain simpler system specifications. However, this approach currently lacks a formalisation that can be used to explain fundamental concepts such as deep characterisation, double linguistic/ontological typing and linguistic extension. This paper provides such a formalisation based on the Diagram Predicate Framework, and discusses its practical realisation in the metaDepth tool.
Similar content being viewed by others
References
Aschauer T, Dauenhauer G, Pree W (2009) Multi-level modeling for industrial automation systems. In: Proceedings of EUROMICRO 2009: 35th EUROMICRO conference on software engineering and advanced applications, IEEE Computer Society, pp 490–496
Atkinson C, Gutheil M, Kennel B (2009) A flexible infrastructure for multilevel language engineering. IEEE Trans Softw Eng 35(6): 742–755
Atkinson C, Gerbig R, Kennel B (2012) On-the-fly emendation of multi-level models. In: Vallecillo A, Tolvanen J-P, Kindler E, Störrle H, and Dimitrios S. Kolovos, editors, Proceedings of ECMFA 2012: 8th European conference on modelling foundations and applications, volume 7349 of lecture notes in computer science, pp 194–209. Springer, Berlin
Atkinson C, Kühne T (2002) Profiles in a strict metamodeling framework. Sci Comput Program 44(1): 5–22
Atkinson C, Kühne T (2002) Rearchitecting the UML infrastructure. ACM Trans Model Comput Simul 12(4): 290–321
Atkinson C, Kühne T (2008) Reducing accidental complexity in domain models. Softw Syst Model 7(3): 345–359
Asikainen T, Männistö T (2009) Nivel: a metamodelling language with a formal semantics. Softw Syst Model 8(4): 521–549
Bézivin J, Gerbé O (2001) Towards a precise definition of the OMG/MDA framework. In: Proceedings of ASE 2001: 16th IEEE international conference on automated software engineering, pp 273–280
Boronat A, Meseguer J (2009) Algebraic semantics of OCL-constrained metamodel specifications. In: Oriol M, Meyer B, Aalst W, Mylopoulos J, Rosemann M, Shaw MJ, Szyperski C (eds) Proceedings of TOOLS 2009: 47th international conference on objects, components, models and patterns, volume 33 of lecture notes in business information processing, pp 96–115. Springer, Berlin
Barr M, Wells C (1955) Category theory for computing science, 2nd edn. Prentice Hall, New Jersey
Clavel M, Durán F, Eker S, Lincoln P, Martí-Oliet N, Meseguer J, Talcott CL (eds.) (2007) All about maude—a high-performance logical framework, how to specify, program and verify systems in rewriting logic, volume 4350 of lecture notes in computer science. Springer, Berlin
Clark T, Sammut P, Willans J (2008) Applied metamodelling: a foundation for language driven development, 2nd edn. Ceteva, Kenilworth
de Lara J, Guerra E (2010) Deep meta-modelling with metadepth. In: Vitek J (ed) Proceedings of TOOLS 2010: 48th international conference on objects, components, models and patterns, volume 6141 of lecture notes in computer science, pp 1–20. Springer, Berlin
de Lara J, Guerra E, Cobos R, Moreno-Llorena J (2014) Extending deep meta-modelling for practical model-driven engineering. Comput J. 57(1): 36–58
Diskin Z (1996) Databases as diagram algebras: specifying queries and views via the graph-based logic of sketches. Technical Report 9602, Frame Inform Systems/LDBD, Riga, Latvia
Diskin Z (1997) Towards algebraic graph-based model theory for computer science. In: Logic colloquium 1995: European summer meeting of the association for symbolic logic. Bull Symb Logic 3(1):144–145
Diskin Z (2002) Visualization vs. specification in diagrammatic notations: a case study with the UML. In: Hegarty M, Meyer B, Narayanan NH (eds) Proceedings of diagrams 2002: 2nd international conference on diagrammatic representation and inference, volume 2317 of lecture notes in computer science, pp 112–115. Springer, Berlin
Diskin Z (2003) Practical foundations of business system specifications, chapter Mathematics of UML: Making the Odysseys of UML less dramatic, pp 145–178. Springer, Berlin
Diskin Z (2005) Encyclopedia of database technologies and applications, chapter mathematics of generic specifications for model management I and II, pp 351–366. Information Science Reference
Diskin Z, Kadish B (2003) Variable set semantics for keyed generalized sketches: formal semantics for object ideny and abstract syntax for conceptual modeling. Data Knowl Eng 47(1): 1–59
Diskin Z, Kadish B (2005) Encyclopedia of database technologies and applications, chapter generic model management, pp 258–265. Information Science Reference
Diskin Z, Kadish B, Piessens F, Johnson M (2000) Universal arrow foundations for visual modeling. In: Anderson M, Cheng P, Haarslev V (eds) Proceedings of diagrams 2000: 1st international conference on diagrammatic representation and inference, volume 1889 of lecture notes in computer science, pp 345–360. Springer, Berlin
Demuth A, Lopez-Herrejon RE, Egyed A (2011) Cross-layer modeler: a tool for flexible multilevel modeling with consistency checking. In: Gyimóthy T, Zeller A (eds) Proceedings of SIGSOFT/FSE 2011: 19th ACM SIGSOFT symposium on the foundations of software engineering, pp 452–455. ACM
Diskin Z, Wolter U (2008) A diagrammatic logic for object-oriented visual modeling. In: Proceedings of ACCAT 2007: 2nd workshop on applied and computational category theory, volume 203/6 of electronic notes in theoretical computer science, pp 19–41. Elsevier, Amsterdam
Eclipse Modeling Framework. Project Web Site. http://www.eclipse.org/emf.
Ehrig H, Engels G, Kreowski H-J, Rozenberg G (1999) Handbook of graph grammars and computing by graph transformations, volume 2: applications, languages, and tools. World Scientific Publishing Company, Singapore
Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of algebraic graph transformation. Springer, Berlin
Ehrig H, Prange U, Taentzer G (2004) Fundamental theory for typed attributed graph transformation. In: Ehrig H, Engels G, Parisi-Presicce F, Rozenberg G (eds) Proceedings of ICGT 2004: 2nd international conference on graph transformations, volume 3256 of lecture notes in computer science, pp 161–177. Springer, Berlin
Luiz Fiadeiro J (2004) Categories for software engineering. Springer, Berlin
Gutheil M, Kennel B, Atkinson C (2008) A systematic approach to connectors in a multi-level modeling environment. In: Czarnecki K, Ober I, Bruel J-M, Uhl A, Völter M (eds) Proceedings of MoDELS 2008: 11th international conference on model driven engineering languages and systems, volume 5301 of lecture notes in computer science, pp 843–857. Springer, Berlin
Gitzel R, Ott I, Schader M (2007) Ontological extension to the MOF metamodel as a basis for code generation. Comput J 50(1): 93–115
Gonzalez-Perez C, Henderson-Sellers B (2006) A powertype-based metamodelling framework. Softw Syst Model 5(1): 72–90
Jarke M, Gallersdörfer R, Jeusfeld MA, Staudt M (1995) ConceptBase—A deductive object base for meta data management. J Intell Inf Syst. 4(2): 167–192
Kolovos DS, Paige RF, Polack F (2006) The Epsilon object language (EOL). In: Rensink A, Warmer J (eds) Proceedings of ECMDA-FA 2006: 2nd European conference on model-driven architecture foundations and applications, volume 4066 of lecture notes in computer science, pp 128–142. Springer, Berlin
Kühne T, Schreiber D (2007) Can programming be liberated from the two-level style? Multi-level programming with DeepJava. In: Gabriel RP, Bacon DF, Videira Lopes C, Steele GL Jr., (eds) Proceedings of OOPSLA 2007: 22nd annual ACM SIGPLAN conference on object-oriented programming, systems, languages and applications, pp 229–244.
Mylopoulos J, Borgida A, Jarke M, Koubarakis M (1990) Telos: representing knowledge about information systems. ACM Trans Inf Syst. 8(4): 325–362
Object Management Group. Web site. http://www.omg.org.
Object Management Group. Meta-Object Facility Specification, January 2006. http://www.omg.org/spec/MOF/2.0/.
Object Management Group. Object Constraint Language Specification, February 2010. http://www.omg.org/spec/OCL/2.2/.
Object Management Group. Unified Modeling Language Specification, May 2010. http://www.omg.org/spec/UML/2.3/.
Odell J (1994) Power types. J Object-Oriented Program 7(2): 8–12
Poernomo I (2006) A type theoretic framework for formal metamodelling. In: International seminar on architecting systems with trustworthy components, volume 3938 of lecture notes in computer science, pp 262–298. Springer, Berlin
Rossini A, de Lara J, Guerra E, Rutle A, Lamo Y (2012) A graph transformation-based semantics for deep metamodelling. In: Schürr A, Varró D, Varró G (eds) Proceedings of AGTIVE 2011: 4th international symposium on applications of graph transformations with industrial relevance, volume 7233 of lecture notes in computer science, pp 19–34. Springer, Berlin
Rossini A (2011) Diagram predicate framework meets model versioning and deep metamodelling. PhD thesis, Department of Informatics, University of Bergen, Norway, December
Rutle A, Rossini A, Lamo Y, Wolter U (2009) A category-theoretical approach to the formalisation of version control in MDE. In: Chechik M, Wirsing M (eds) Proceedings of FASE 2009: 12th international conference on fundamental approaches to software engineering, volume 5503 of lecture notes in computer science, pp 64–78. Springer, Berlin
Rutle A, Rossini A, Lamo Y, Wolter U (2009) A diagrammatic formalisation of MOF-based modelling languages. In: Oriol M, Meyer B, Aalst W, Mylopoulos J, Rosemann M, Shaw MJ, Szyperski C (eds) Proceedings of TOOLS 2009: 47th international conference on objects, components, models and patterns, volume 33 of lecture notes in business information processing, pp 37–56. Springer, Berlin
Rossini A, Rutle A, Lamo Y, Wolter U (2010) A formalisation of the copy-modify-merge approach to version control in MDE. J Logic Algebraic Program. 79(7):636–658, 2010.
Rutle A, Rossini A, Lamo Y, Wolter U (2010) A formalisation of constraint-aware model transformations. In: Rosenblum D, Taentzer D (eds) Proceedings of FASE 2010: 13th international conference on fundamental approaches to software engineering, volume 6013 of lecture notes in computer science, pp 13–28. Springer, Berlin
Rutle A, Rossini A, Lamo Y, Wolter U (2012) A formal approach to the specification and transformation of constraints in MDE. J Logic Algebraic Program 81(4): 422–457
Rossini A, Rutle A, Mughal KA, Lamo Y, Wolter U (2011) A formal approach to data validation constraints in MDE. In: Kyas M, Meng S, Stolz V (eds) Proceedings of TTSS 2011: 5th international workshop on harnessing theories for tool support in software, pp 65–76
Rutle A (2010) Diagram predicate framework: a formal approach to MDE. PhD thesis, Department of Informatics, University of Bergen, Norway, November 2010
Steinberg D, Budinsky F, Paternostro M, Merks Ed (2008) EMF: eclipse modeling framework 2.0, 2nd edn. Addison-Wesley Professional, Reading
Author information
Authors and Affiliations
Corresponding author
Additional information
Tom Maibaum
Rights and permissions
About this article
Cite this article
Rossini, A., de Lara, J., Guerra, E. et al. A formalisation of deep metamodelling. Form Asp Comp 26, 1115–1152 (2014). https://doi.org/10.1007/s00165-014-0307-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-014-0307-x