Metamodelling for Grammarware Researchers

  • Richard F. Paige
  • Dimitrios S. Kolovos
  • Fiona A. C. Polack
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7745)


A metamodel is variously defined as a model of a model, a definition of a language, a description of abstract syntax, and a description of a domain. It is all of these things and more. Metamodels can be confusing, and explaining why they are constructed, what you can do with them, and how they are built can be challenging, especially when trying to bridge the gap between the modelware and grammarware communities. In this example-driven mini-tutorial, we introduce the key concepts and ideas behind metamodelling and explain why metamodels are useful, and particularly how they differ from grammar-based approaches to language development. We give some tips on how grammarware researchers can explain what they do to modelware researchers, and vice versa, in the spirit of interdisciplinarity and improving collaboration.


Object Constraint Language Abstract Syntax Work Package Object Management Group Concrete Syntax 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Atkinson, C., Kühne, T.: Model-driven development: A metamodeling foundation. IEEE Software 20(5), 36–41 (2003)CrossRefGoogle Scholar
  2. 2.
    Bézivin, J.: Model engineering for software modernization. In: WCRE, p. 4 (2004)Google Scholar
  3. 3.
    Bézivin, J.: On the unification power of models. Software and System Modeling 4(2), 171–188 (2005)CrossRefGoogle Scholar
  4. 4.
    Bézivin, J., Bouzitouna, S., Del Fabro, M.D., Gervais, M.-P., Jouault, F., Kolovos, D.S., Kurtev, I., Paige, R.F.: A Canonical Scheme for Model Composition. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 346–360. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Clark, T., Sammut, P., Willans, J.: Applied metamodelling: a foundation for language driven development, 2nd edn. (2004),
  6. 6.
    de Lara, J., Guerra, E.: Deep Meta-modelling with MetaDepth. In: Vitek, J. (ed.) TOOLS 2010. LNCS, vol. 6141, pp. 1–20. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  7. 7.
    Object Management Group. Human-Usable Textual Notation (HUTN) Specification (2004),
  8. 8.
    Object Management Group. A proposal for an MDA foundation model (April 01, 2005),
  9. 9.
    Object Management Group. Meta-object facility 2.0 core specification (2006),
  10. 10.
    Object Management Group. Unified Modelling Language (UML) 2.2 Specification (2009),
  11. 11.
    Object Management Group. Diagram definition v1.0 ftf specification (2011),
  12. 12.
  13. 13.
    Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall (1997)Google Scholar
  14. 14.
    Zaytsev, V.: BNF WAS HERE: What Have We Done About the Unnecessary Diversity of Notation for Syntactic Definitions. In: Mernik, M., Bryant, B. (eds.) Programming Languages Track, Proceedings of the 27th ACM Symposium on Applied Computing, SAC 2012, Riva del Garda, Trento, Italy, vol. II, pp. 1910–1915. ACM (March 2012)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Richard F. Paige
    • 1
  • Dimitrios S. Kolovos
    • 1
  • Fiona A. C. Polack
    • 1
  1. 1.Department of Computer ScienceUniversity of YorkUK

Personalised recommendations