Analysing Graph Transformation Rules through OCL

  • Jordi Cabot
  • Robert Clarisó
  • Esther Guerra
  • Juan de Lara
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5063)


In this paper we present an approach to the analysis of graph transformation rules based on an intermediate OCL representation. We translate different semantics of rules into OCL, together with the properties of interest (like rule applicability, conflict or independence). The intermediate representation serves three purposes: (i) allows the seamless integration of graph transformation rules with the MOF and OCL standards, and enables taking into account meta-model and OCL constraints when verifying the correctness of the rules; (ii) permits the interoperability of graph transformation concepts with a number of standards-based model-driven development tools; and (iii) makes available a plethora of OCL tools to actually perform the rule analysis.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Anastasakis, K., Bordbar, K., Georg, G., Ray, I.: UML2Alloy: A Challenging Model Transformation. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 436–450. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  2. 2.
    Baldan, P., Corradini, A., König, B.: A Static Analysis Technique for Graph Transformation Systems. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 381–395. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  3. 3.
    Baresi, L., Spoletini, P.: On the Use of Alloy to Analyze Graph Transformation Systems. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 306–320. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  4. 4.
    Brucker, A.D., Wolff, B.: The HOL-OCL book. Tech. Rep. 525, ETH Zurich (2006)Google Scholar
  5. 5.
    Büttner, F., Gogolla, M.: Realizing Graph Transformations by Pre- and Postconditions and Command Sequences. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 398–413. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: A tool for the formal verification of UML/OCL models using constraint programming. In: Proc. ASE 2007, pp. 547–548 (2007)Google Scholar
  7. 7.
    Clavel, M., Egea, M.: A rewriting-based validation tool for UML+OCL static class diagrams. In: Johnson, M., Vene, V. (eds.) AMAST 2006. LNCS, vol. 4019, pp. 368–373. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, Heidelberg (2006)MATHGoogle Scholar
  9. 9.
    Ehrig, H., Heckel, R., Korff, M., Löwe, M., Ribeiro, L., Wagner, A., Corradini, A.: Algebraic Approaches to Graph Transformation - Part II: Single Pushout Approach and Comparison with Double Pushout Approach. In: [18], pp. 247–312 (1999)Google Scholar
  10. 10.
    Ermel, C., Hölscher, K., Kuske, S., Ziemann, P.: Animated simulation of integrated UML behavioral models based on graph transformation. In: Proc. IEEE VL/HCC 2005, pp. 125–133 (2005)Google Scholar
  11. 11.
    Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL models in USE by automatic snapshot generation. SoSyM 4(4), 386–398 (2005)CrossRefGoogle Scholar
  12. 12.
    Heckel, R., Küster, J.-M.-., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  13. 13.
    de Lara, J., Bardohl, R., Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Attributed graph transformation with node type inheritance. Theor. Comput. Sci. 376(3), 139–163 (2007)CrossRefMATHGoogle Scholar
  14. 14.
    de Lara, J., Vangheluwe, H.: Defining visual notations and their manipulation through meta-modelling and graph transformation. J. Vis. Lang. Comput. 15(3-4), 309–330 (2004)CrossRefGoogle Scholar
  15. 15.
    Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design, 3rd edn. Prentice-Hall, Englewood Cliffs (2004)Google Scholar
  16. 16.
    Mens, T., Taentzer, G., Runge, O.: Analysing refactoring dependencies using graph transformation. SoSyM 6(3), 269–285 (2007)CrossRefGoogle Scholar
  17. 17.
    QVT standard specification,
  18. 18.
    Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations, Foundations, vol. 1. World Scientific, Singapore (1997)Google Scholar
  19. 19.
    Sendall, S., Strohmeier, A.: Using OCL and UML to Specify System Behavior. In: Clark, A., Warmer, J. (eds.) Object Modeling with the OCL. LNCS, vol. 2263, pp. 250–280. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  20. 20.
    Taentzer, G., Rensink, A.: 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)Google Scholar
  21. 21.
    Varró, D.: Automated formal verification of visual modeling languages by model checking. SoSyM 3(2), 85–113 (2004)CrossRefGoogle Scholar
  22. 22.
    Cabot, J., Clarisó, R., Riera, D.: Verification of UML/OCL Class Diagrams Using Constraint Programming. MoDeVVa 2008. ICST Workshop (to appear, 2008),
  23. 23.
    Cabot, J., Clarisó, R., Riera, D.: Analysing Graph Transformation Rules Through OCL (extended version),

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Jordi Cabot
    • 1
  • Robert Clarisó
    • 1
  • Esther Guerra
    • 2
  • Juan de Lara
    • 3
  1. 1.Universitat Oberta de CatalunyaSpain
  2. 2.Universidad Carlos III de MadridSpain
  3. 3.Universidad Autónoma de MadridSpain

Personalised recommendations