Skip to main content
Log in

A formalisation of deep metamodelling

  • Original Article
  • Published:
Formal Aspects of Computing

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. 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

  2. Atkinson C, Gutheil M, Kennel B (2009) A flexible infrastructure for multilevel language engineering. IEEE Trans Softw Eng 35(6): 742–755

    Article  Google Scholar 

  3. 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

  4. Atkinson C, Kühne T (2002) Profiles in a strict metamodeling framework. Sci Comput Program 44(1): 5–22

    Article  MATH  Google Scholar 

  5. Atkinson C, Kühne T (2002) Rearchitecting the UML infrastructure. ACM Trans Model Comput Simul 12(4): 290–321

    Article  Google Scholar 

  6. Atkinson C, Kühne T (2008) Reducing accidental complexity in domain models. Softw Syst Model 7(3): 345–359

    Article  Google Scholar 

  7. Asikainen T, Männistö T (2009) Nivel: a metamodelling language with a formal semantics. Softw Syst Model 8(4): 521–549

    Article  Google Scholar 

  8. 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

  9. 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

  10. Barr M, Wells C (1955) Category theory for computing science, 2nd edn. Prentice Hall, New Jersey

    Google Scholar 

  11. 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

  12. Clark T, Sammut P, Willans J (2008) Applied metamodelling: a foundation for language driven development, 2nd edn. Ceteva, Kenilworth

  13. 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

  14. 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

    Article  Google Scholar 

  15. 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

  16. 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

  17. 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

  18. 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

  19. 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

  20. 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

    Article  Google Scholar 

  21. Diskin Z, Kadish B (2005) Encyclopedia of database technologies and applications, chapter generic model management, pp 258–265. Information Science Reference

  22. 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

  23. 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

  24. 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

  25. Eclipse Modeling Framework. Project Web Site. http://www.eclipse.org/emf.

  26. 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

  27. Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of algebraic graph transformation. Springer, Berlin

    MATH  Google Scholar 

  28. 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

  29. Luiz Fiadeiro J (2004) Categories for software engineering. Springer, Berlin

    Google Scholar 

  30. 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

  31. 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

    Article  Google Scholar 

  32. Gonzalez-Perez C, Henderson-Sellers B (2006) A powertype-based metamodelling framework. Softw Syst Model 5(1): 72–90

    Article  Google Scholar 

  33. 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

    Article  Google Scholar 

  34. 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

  35. 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.

  36. Mylopoulos J, Borgida A, Jarke M, Koubarakis M (1990) Telos: representing knowledge about information systems. ACM Trans Inf Syst. 8(4): 325–362

    Article  Google Scholar 

  37. Object Management Group. Web site. http://www.omg.org.

  38. Object Management Group. Meta-Object Facility Specification, January 2006. http://www.omg.org/spec/MOF/2.0/.

  39. Object Management Group. Object Constraint Language Specification, February 2010. http://www.omg.org/spec/OCL/2.2/.

  40. Object Management Group. Unified Modeling Language Specification, May 2010. http://www.omg.org/spec/UML/2.3/.

  41. Odell J (1994) Power types. J Object-Oriented Program 7(2): 8–12

    MathSciNet  Google Scholar 

  42. 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

  43. 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

  44. Rossini A (2011) Diagram predicate framework meets model versioning and deep metamodelling. PhD thesis, Department of Informatics, University of Bergen, Norway, December

  45. 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

  46. 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

  47. 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.

  48. 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

  49. 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

    Article  MathSciNet  MATH  Google Scholar 

  50. 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

  51. Rutle A (2010) Diagram predicate framework: a formal approach to MDE. PhD thesis, Department of Informatics, University of Bergen, Norway, November 2010

  52. Steinberg D, Budinsky F, Paternostro M, Merks Ed (2008) EMF: eclipse modeling framework 2.0, 2nd edn. Addison-Wesley Professional, Reading

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alessandro Rossini.

Additional information

Tom Maibaum

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-014-0307-x

Keywords

Navigation