Presentation is loading. Please wait.

Presentation is loading. Please wait.

Universität Koblenz-Landau Institut für Softwaretechnik Re-Group WCRE 2000Brisbn, Nov 25, 2000 Graph Exchange Language Representing Graph Schemas (a working.

Similar presentations


Presentation on theme: "Universität Koblenz-Landau Institut für Softwaretechnik Re-Group WCRE 2000Brisbn, Nov 25, 2000 Graph Exchange Language Representing Graph Schemas (a working."— Presentation transcript:

1 Universität Koblenz-Landau Institut für Softwaretechnik Re-Group WCRE 2000Brisbn, Nov 25, 2000 Graph Exchange Language Representing Graph Schemas (a working report) Ric Holt Andreas Winter

2 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (2) Contents Motivation... summarizing previous talks GXL schema notation... using UML class diagrams Exchanging GXL schemas... using GXL documents Conclusion

3 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (3)... previous Talks Sim: –WoSEF 2000, CASCON 2000: need for schemas –lone pine schema sanctuary (http://www.cs.utoronto.ca/~simsuz/schema) Holt, Hassan, Lague, Lapierre, Leduc (DATRIX): –AST schemas for C/C++, Java Boshernitsan, Graham: –schemas for AST´s on different levels of granularity Godfrey: –hierarchy of schemas (different levels of granularity) Girard et al. (BAUHAUS): –schema for resource graph (architectural level) Tichelaar, Ducasse, Demeyer (FAMIX) – coarse grained, language independent schema for OO

4 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (4) Variety of different schemas Dimensions –Programming Languages single language systems (Cobol, C, C++, JAVA,...) multi language systems –Level of Abstraction AST level architectural level Requirements –adaptable and extensible interchange format GXL Approach –exchange of schema data and –exchange of instance data

5 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (5) standard exchange language –for interchanging data between software engineering tools on instance level on schema level mathematical model on instance and schema level –typed, attributed, directed graphs notation –eXtensible Markup Language (XML) and Unified Modeling Language (UML) graphs: UML object diagrams (yesterday) schemas: UML class diagrams (now) GXL Objective

6 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (6) Example while x > 0 do repeat y := y + 1 until (y = x); x := x + 1 end

7 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (7) What to Represent in a Graph Schema node, edge, and relation types attribute names and attribute types associations –between node, edge, relation types –between attributes and node, edge, relation types higher conceptual modeling constructs –generalization of node, edge, and relation types –aggregation –composition (hierarchical graphs) miscellaneous –edge direction –constraints e.g. cardinalities –ordering of incidences

8 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (8) Graph Schema UML class diagram (schema) Var file : string line : int refers Proc v : Var file="main.c" line = 27 line = 42 e : refers UML object diagram (graph) p : Proc

9 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (9) Graph Schema - Notation Var file : string line : int refers Proc edge type node type node attribute ordering {ordered} direction cardinalities 0.. * attribute type attribute name edge attributes

10 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (10) Graph Schema - Notation UML object diagram (n-ary edge) V W U r theSecondU theFirstU theV theW 1..* 0..1 1 1 {ordered} UML class diagram (schema) v : V w : W u : U r : theSecondU theFirstU theV theW {1} {2}

11 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (11) Graph Schema - Notation UML object diagram (hierarchical graph) u : U t : T f : F v : Vw : W e : E g : G UML class diagram (schema) VW E T U F G Composition

12 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (12) Graph Schema - Higher Constructs Generalization Aggregation

13 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (13) Exchanging Schemas GXL First Directive Everything is a typed, attributed, directed graph Conclusion –Schemas (UML class diagrams) are represented as graphs as well –Schemas are exchanged as GXL documents suiting a metaschema for schema graphs –only one common and simple DTD for exchanging graphs matching different graph schemas and graph schemas matching a metaschema

14 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (14) GXL Schema Representation UML class diagram Var file:string line : int Proc refers :Nodetype name="Proc" : Attribute name="file" : Domain name="string" : Edgetype name="refers" : Nodetype name="Var" : Domain name="int" : Attribute name="line" from to hasAttrhasDom hasAttr hasDom approach schema graph ?

15 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (15) Conclusion GXL offers a standard exchange language for –graphs –graph schemas GXL uses one common DTD for exchanging –graphs –graph schemas more information –http://www.gupro.de/GXL

16 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (16) next Steps define the concrete subset of UML class diagrams, necessary for exchanging graph schemas define the GXL metaschema for exchanging schema graphs (after dinner) define reference schemas for various applications –different languages –different levels of granularity Please send us your schemas

17 © Institut für Softwaretechnik Universität Koblenz-Landau WCRE 2000 (17) Upcoming Events Dagstuhl Seminar "Interoperability of Reengineering Tools" (January 21-26, 2001) (ask Kostas, if you want to participate) APPLIGRAPH Meeting "Exchange Formats for Graph Transformation" (Spring, Bremen) WoSEF 2001


Download ppt "Universität Koblenz-Landau Institut für Softwaretechnik Re-Group WCRE 2000Brisbn, Nov 25, 2000 Graph Exchange Language Representing Graph Schemas (a working."

Similar presentations


Ads by Google