Generating Instance Models from Meta Models

  • Karsten Ehrig
  • Jochen M. Küster
  • Gabriele Taentzer
  • Jessica Winkelmann
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4037)


Meta modeling is a wide-spread technique to define visual languages, with the UML being the most prominent one. Despite several advantages of meta modeling such as ease of use, the meta modeling approach has one disadvantage: It is not constructive i. e. it does not offer a direct means of generating instances of the language. This disadvantage poses a severe limitation for certain applications. For example, when developing model transformations, it is desirable to have enough valid instance models available for large-scale testing. Producing such a large set by hand is tedious. In the related problem of compiler testing, a string grammar together with a simple generation algorithm is typically used to produce words of the language automatically. In this paper, we introduce instance-generating graph grammars for creating instances of meta models, thereby overcoming the main deficit of the meta modeling approach for defining languages.


Class Diagram Object Constraint Language Graph Transformation Meta Model Type Graph 
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.


  1. 1.
    The Alloy Analyzer - 3.0 Beta (2000),
  2. 2.
    Alanen, M., Porres, I.: A Relation Between Context-Free Grammars and Meta Object Facility Metamodels. Technical Report TUCS No 606, TUCS Turku Center for Computer Science (March 2003)Google Scholar
  3. 3.
    Bardohl, R., Ehrig, H., de Lara, J., Taentzer, G.: Integrating Meta Modelling with Graph Transformation for Efficient Visual Language Definition and Model Manipulation. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, Springer, Heidelberg (2004)CrossRefGoogle Scholar
  4. 4.
    Boujarwah, A.S., Saleh, K.: Compiler test case generation methods: a survey and assessment. Information and Software Technology 39(9), 617–625 (1997)CrossRefGoogle Scholar
  5. 5.
    Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., Löwe, M.: Algebraic Approaches to Graph Transformation Part I: Basic Concepts and Double Pushout Approach. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph transformation: Foundations, vol. 1, pp. 163–246. World Scientific, Singapore (1997)CrossRefGoogle Scholar
  6. 6.
    Ehrig, H., Ehrig, K., de Lara, J., Taentzer, G., Varró, D., Varró-Gyapay, S.: Termination Criteria for Model Transformation. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, pp. 214–228. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  7. 7.
    Ehrig, K., Küster, J., Taentzer, G., Winkelmann, J.: Automatically Generating Instances of Meta Models. Technical Report 2005–09, Technical University of Berlin, Dept. of Computer Science (November 2005)Google Scholar
  8. 8.
    Ehrig, K., Küster, J., Taentzer, G., Winkelmann, J.: Translation of Restricted OCL Constraints into Graph Constraints for Generating Meta Model Instances by Graph Grammars. In: Proc (GT-VMT) (2006), A preliminary version of the proceedings is available at:
  9. 9.
    Fu, K.S., Booth, T.L.: Grammatical Inference: Introduction and Survey. IEEE Transcations on Systems, Man, and Cybernetics SMC-5(95–111), 409–423 (1975)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL Models in USE by Automatic Snapshot Generation. Software and Systems Modeling (to appear, 2005)Google Scholar
  11. 11.
    Hartman, A., Nagin, K.: Model Driven Testing - AGEDIS Architecture, Interfaces, and Tools. In: Proceedings 1st European Conference on Model-Driven Software Engineering (2003)Google Scholar
  12. 12.
    Jeltsch, E., Kreowski, H.-J.: Grammatical Inference Based on Hyperedge Replacement. In: Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) Graph Grammars 1990. LNCS, vol. 532, pp. 461–474. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  13. 13.
    Object Management Group. MDA Guide Version 1.0.1 (June 2003)Google Scholar
  14. 14.
    Object Management Group (OMG). UML 2.0 Superstructure Final Adopted Specification. OMG document pts/03-08-02 (August 2003)Google Scholar
  15. 15.
    Object Management Group (OMG). OCL 2.0 Specification. OMG document ptc/2005-06-06 (June 2005)Google Scholar
  16. 16.
    Rensink, A., Taentzer, G.: Ensuring Structural Constraints in Graph-Based Models with Type Inheritance. In: Cerioli, M. (ed.) FASE 2005. LNCS, vol. 3442, pp. 64–79. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2006

Authors and Affiliations

  • Karsten Ehrig
    • 1
  • Jochen M. Küster
    • 2
  • Gabriele Taentzer
    • 3
  • Jessica Winkelmann
    • 3
  1. 1.Department of Computer ScienceUniversity of LeicesterUK
  2. 2.IBM Zurich Research LaboratoryRüschlikonSwitzerland
  3. 3.Department of Computer ScienceTechnical University of BerlinGermany

Personalised recommendations