Ensuring Structural Constraints in Graph-Based Models with Type Inheritance

Graphs are a common means to represent structures in models and meta-models of software systems. In this context, the description of model domains by classifying the domain entities and their relations using class diagrams or type graphs has emerged as a very valuable principle. The constraints that can be imposed by pure typing are, however, relatively weak; it is therefore common practice to enrich type information with structural properties (such as local invariants or multiplicity conditions) or inheritance. In this paper, we show how to formulate structural properties using graph constraints in type graphs with inheritance, and we show how to translate constrained type graphs with inheritance to equivalent constrained simple type graphs. From existing theory it then follows that graph constraints can be translated into pre-conditions for productions of a typed graph transformation system which ensures those graph constraints. This result can be regarded as a further important step of integrating graph transformation with object-orientation concepts.

[1]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[2]  Hartmut Ehrig,et al.  Integrating Meta-modelling Aspects with Graph Transformation for Efficient Visual Language Definition and Model Manipulation , 2004, FASE.

[3]  Hartmut Ehrig,et al.  Theory of Constraints and Application Conditions: From Graphs to High-Level Structures , 2004, Fundam. Informaticae.

[4]  N. S. Barnett,et al.  Private communication , 1969 .

[5]  Tom Mens,et al.  Formalising Behaviour Preserving Program Transformations , 2002, ICGT.

[6]  Arend Rensink,et al.  Representing First-Order Logic Using Graphs , 2004, ICGT.

[7]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[8]  Andrea Calì,et al.  A Formal Framework for Reasoning on UML Class Diagrams , 2002, ISMIS.

[9]  Dániel Varró,et al.  VPM: A visual, precise and multilevel metamodeling framework for describing mathematical domains and UML (The Mathematics of Metamodeling is Metamodeling Mathematics) , 2003, Software & Systems Modeling.

[10]  Hartmut Ehrig,et al.  Node Type Inheritance Concept for Typed Graph Transformation , 2003 .

[11]  Fernando Luís Dotti,et al.  Translating Java Code to Graph Transformation Systems , 2004, ICGT.

[12]  Shusaku Tsumoto,et al.  Foundations of Intelligent Systems, 15th International Symposium, ISMIS 2005, Saratoga Springs, NY, USA, May 25-28, 2005, Proceedings , 2005, ISMIS.

[13]  Francesca Rossi,et al.  Graph Processes , 1996, Fundam. Informaticae.

[14]  Reiko Heckel,et al.  Ensuring consistency of conditional graph rewriting - a constructive approach , 1995, SEGRAGRA.