From Core OCL Invariants to Nested Graph Constraints

  • Thorsten Arendt
  • Annegret Habel
  • Hendrik Radke
  • Gabriele Taentzer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8571)

Abstract

Meta-modeling including the use of the Object Constraint Language (OCL) forms a well-established approach to design domain-specific modeling languages. This approach is purely declarative in the sense that instance construction is not needed and not considered. In contrast, graph grammars allow the stepwise construction of instances by the application of transformation rules. In this paper, we consider meta-models with Core OCL invariants and translate them to nested graph constraints for typed attributed graphs. Models and meta-models are translated to instance and type graphs. We show that a model satisfies a Core OCL invariant iff its corresponding instance graph satisfies the corresponding nested graph constraint. The aim of this work is to establish a first formal relation between meta-modeling and the theory of graph transformation including constraints to come up with an integrated approach for defining modeling languages in an optimal way in the future.

Keywords

Meta modeling OCL graph constraints application conditions 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    OMG: Object Constraint Language, http://www.omg.org/spec/OCL/
  2. 2.
    Bardohl, R., Minas, M., Schürr, A., Taentzer, G.: Application of Graph Transformation to Visual Languages. In: Handbook of Graph Grammars and Computing by Graph Transformation, vol. 2, pp. 105–180. World Scientific (1999)Google Scholar
  3. 3.
    Habel, A., Pennemann, K.H.: Correctness of High-Level Transformation Systems Relative to Nested Conditions. Mathematical Structures in Computer Science 19, 245–296 (2009)CrossRefMATHMathSciNetGoogle Scholar
  4. 4.
    Biermann, E., Ermel, C., Taentzer, G.: Formal foundation of consistent EMF model transformations by algebraic graph transformation. Software and System Modeling 11(2), 227–250 (2012)CrossRefGoogle Scholar
  5. 5.
    Chiorean, D., Bortes, M., Corutiu, D.: Proposals for a Widespread Use of OCL. In: Workshop on Tool Support for OCL and Related Formalisms, Technical Report LGL-REPORT-2005-001, EPFL, 68–82 (2005)Google Scholar
  6. 6.
    Richters, M.: A Precise Approach to Validating UML Models and OCL Constraints. PhD thesis, Universität Bremen, Logos Verlag, Berlin (2002)Google Scholar
  7. 7.
    Arendt, T., Habel, A., Radke, H., Taentzer, G.: From Core OCL Invariants to Nested Graph Constraints: Extended version (2014), http://www.uni-marburg.de/fb12/forschung/berichte/berichteinformtk/pdfbi/bi2014-01.pdf
  8. 8.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamental Theory of Typed Attributed Graph Transformation based on Adhesive HLR Categories. Fundamenta Informaticae 74(1), 31–61 (2006)MATHMathSciNetGoogle Scholar
  9. 9.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. EATCS Monographs of Theoretical Computer Science. Springer (2006)Google Scholar
  10. 10.
    Orejas, F.: Symbolic Graphs for Attributed Graph Constraints. J. Symb. Comput. 46(3), 294–315 (2011)CrossRefMATHMathSciNetGoogle Scholar
  11. 11.
    Bardohl, R., Ehrig, H., de Lara, J., Taentzer, G.: Integrating Meta-modelling Aspects with Graph Transformation for Efficient Visual Language Definition and Model Manipulation. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, pp. 214–228. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  12. 12.
    Poskitt, C.M., Plump, D.: Hoare-Style Verification of Graph Programs. Fundamenta Informaticae 118(1-2), 135–175 (2012)MATHMathSciNetGoogle Scholar
  13. 13.
    Ehrig, H., Golas, U., Habel, A., Lambers, L., Orejas, F.: \(\mathcal{M}\)-Adhesive Transformation Systems with Nested Application Conditions. Part 1: Parallelism, Concurrency and Amalgamation. Mathematical Structures in Computer Science 24 (2014)Google Scholar
  14. 14.
    Pennemann, K.H.: Development of Correct Graph Transformation Systems. PhD thesis, Universität Oldenburg (2009)Google Scholar
  15. 15.
    Beckert, B., Keller, U., Schmitt, P.H.: Translating the Object Constraint Language into First-order Predicate Logic. In: VERIFY, Workshop at Federated Logic Conferences, FLoC (2002)Google Scholar
  16. 16.
    Jackson, D.: Alloy Analyzer website (2012), http://alloy.mit.edu/
  17. 17.
    Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: On challenges of model transformation from UML to Alloy. Software and System Modeling 9(1), 69–86 (2010)CrossRefGoogle Scholar
  18. 18.
    Kuhlmann, M., Gogolla, M.: From UML and OCL to Relational Logic and Back. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 415–431. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  19. 19.
    Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL models in USE by automatic snapshot generation. SoSyM 4(4), 386–398 (2009)Google Scholar
  20. 20.
    Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: A Tool for the Formal Verification of UML/OCL Models using Constraint Programming. In: 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 547–548 (2007)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Thorsten Arendt
    • 1
  • Annegret Habel
    • 2
  • Hendrik Radke
    • 2
  • Gabriele Taentzer
    • 1
  1. 1.Philipps-Universität MarburgGermany
  2. 2.Universität OldenburgGermany

Personalised recommendations