GXL
Encyclopedia
GXL is designed to be a standard exchange format for graphs
Graph (mathematics)
In mathematics, a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected objects are represented by mathematical abstractions called vertices, and the links that connect some pairs of vertices are called edges...

. GXL is an extensible markup language (XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

) sublanguage and the syntax is given by an XML document type definition (DTD). This exchange format offers an adaptable and flexible means to support interoperability between graph-based tools.

Overview

In particular, GXL was developed to enable interoperability between software reengineering
Reengineering (software)
The reengineering of software was described by Chikofsky and Cross in their 1990 paper, as "The examination and alteration of a system to reconstitute it in a new form"...

 tools and components, such as code extractors (parsers), analyzers and visualizers. GXL allows software reengineers to combine single-purpose tools especially for parsing, source code extraction, architecture recovery, data flow analysis, pointer analysis, program slicing, query techniques, source code visualization, object recovery, restructuring, refactoring, remodularization, etc., into a single powerful reengineering workbench.

There are two innovative features in GXL that make it well-suited to an exchange format for software data.
  1. The conceptual data model is a typed, attributed, directed graph. This is not to say that all software data ought to be manipulated as graphs, but rather that they can be exchanged as graphs.
  2. It can be used to represent instance data as well as schemas for describing the structure of the data. Moreover, the schema can be explicitly stated along with instance data. The structure of graphs exchanged by GXL streams is given by a schema represented as a Unified Modeling Language
    Unified Modeling Language
    Unified Modeling Language is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created, by the Object Management Group...

     (UML) class diagram.


Since GXL is a general graph exchange format, it can also be used to interchange any graph-based data, including models between computer-aided software engineering
Computer-aided software engineering
Computer-aided software engineering is the scientific application of a set of tools and methods to a software system which is meant to result in high-quality, defect-free, and maintainable software products...

 (CASE) tools, data between graph transformation systems
Graph rewriting
Graph transformation, or Graph rewriting, concerns the technique of creating a new graph out of an original graph using some automatic machine. It has numerous applications, ranging from software verification to layout algorithms....

, or graph visualization tools. GXL includes support for hypergraph
Hypergraph
In mathematics, a hypergraph is a generalization of a graph, where an edge can connect any number of vertices. Formally, a hypergraph H is a pair H = where X is a set of elements, called nodes or vertices, and E is a set of non-empty subsets of X called hyperedges or links...

s and hierarchical graphs, and can be extended to support other types of graphs.

GXL originated in the merger of GRAph eXchange format (GraX: University of Koblenz, DE) for exchanging typed, attributed, ordered, directed graphs (TGraphs), Tuple Attribute Language (TA: University of Waterloo, CA), and the graph format of the PROGRES graph rewriting system (University Bw München, DE). Furthermore, GXL includes ideas from exchange formats from reverse engineering, including Relation Partition Algebra (RPA: Philips Research Eindhoven, NL) and Rigi Standard Format (RSF: University of Victoria, CA). The development of GXL was also influenced by various formats used in graph drawing (e.g. daVinci, Graph Modelling Language
Graph Modelling Language
Graph Modelling Language is a hierarchical ASCII-based file format for describing graphs. It has been also named Graph Meta Language.-Example:A simple graph in GML format:graph [ comment "This is a sample graph" directed 1 id 42...

 (GML), Graphlet, GraphXML) and current discussions on exchange formats for graph transformation systems.

Presentations of former GXL versions

At the 2000 International Conference on Software Engineering
International Conference on Software Engineering
The International Conference on Software Engineering , is one of the largest annual software engineering conferences. The first ICSE conference was in 1975 in Washington DC.-List of Conferences:Past and future ICSE conferences include:...

 (ICSE 2000) Workshop on Standard Exchange Formats (WoSEF), GXL was accepted as working draft for an exchange format by numerous research groups working in the domain of software reengineering and graph transformation.

During the APPLIGRAPH Subgroup Meeting on Exchange Formats for Graph Transformation, an overview of GXL was given [Schürr, 2000] and participants decided to use GXL to represent graphs within their exchange format for graph transformation systems (GTXL).

The 2000 IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...

 Centers for Advanced Studies Conference (CASCON
IBM CASCON
CASCON is a Computer Science conference hosted by IBM in Toronto that occurs annually in late-October or early-November for 4 days in Markham, Ontario....

 2000) included two half-day workshops on GXL. In the morning, 'Software Data Interchange with GXL: Introduction and Tutorial' gave a primer on the syntax and concepts in the format, while the afternoon workshop, 'Software Data Interchange with GXL: Implementation Issues' discussed the development of converters and standard schemas.

At the Seventh Working Conference on Reverse Engineering (WCRE 2000), GXL was presented in a tutorial [Holt et al., 2000] and during the workshop on exchange formats [Holt/Winter, 2000]. Central results were a simpler representation of ordering information, the usage of UML class diagrams to present graph schemata and the representation of UML class diagrams by GXL graphs.

The Dagstuhl Seminar on Interoperability of Reengineering Tools ratified GXL 1.0 as a standard interchange format for exchanging reengineering related data. Numerous groups from industry and research committed to using GXL, to import and export GXL documents to their tools, and to write various GXL tools.

GXL Partners

During various conferences and workshops the following groups from industry and academics committed to refining GXL to be the standard graph exchange format, write GXL filters and tools or use GXL as exchange format in their tools:
  • Bell Canada
    Bell Canada
    Bell Canada is a major Canadian telecommunications company. Including its subsidiaries such as Bell Aliant, Northwestel, Télébec, and NorthernTel, it is the incumbent local exchange carrier for telephone and DSL Internet services in most of Canada east of Manitoba and in the northern territories,...

     (Datrix Group)
  • Centrum Wiskunde & Informatica (CWI), The Netherlands (Interactive Software Development and Renovation and Information Visualization)
  • IBM Centre for Advanced Studies, Canada
  • Mahindra British Telecom, India
  • Merlin Software-Engineering GmbH, Germany
  • Nokia Research Center, Finland (Software Technology Laboratory)
  • Philips Research, The Netherlands (Software Architecture Group)
  • RWTH Aachen
    RWTH Aachen
    RWTH Aachen University is a research university located in Aachen, North Rhine-Westphalia, Germany with roughly 33,000 students enrolled in 101 study programs....

    , Germany (Department of Computer Science III)
  • TU Berlin, Germany (Theoretical CS/Formal Specification Group)
  • University of Berne
    University of Berne
    The University of Bern is a university in the Swiss capital of Bern and was founded in 1834. It is regulated and financed by the Canton of Bern. It is a comprehensive university offering a broad choice of courses and programmes in eight faculties and some 160 institutes. The university is an...

    , Switzerland (Software Composition Group)
  • Bundeswehr University Munich, Germany (Institute for Software Technology)
  • University of Edinburgh
    University of Edinburgh
    The University of Edinburgh, founded in 1583, is a public research university located in Edinburgh, the capital of Scotland, and a UNESCO World Heritage Site. The university is deeply embedded in the fabric of the city, with many of the buildings in the historic Old Town belonging to the university...

    , UK, (Edinburgh Concurrency Workbench)
  • University of Koblenz, Germany (GUPRO Group)
  • University of Oregon
    University of Oregon
    -Colleges and schools:The University of Oregon is organized into eight schools and colleges—six professional schools and colleges, an Arts and Sciences College and an Honors College.- School of Architecture and Allied Arts :...

    , USA (Department of Computer Science)
  • University of Paderborn
    University of Paderborn
    The University of Paderborn in Paderborn, North Rhine-Westphalia, Germany was founded in 1972. 15,228 students were enrolled at the university as of December 2010....

    , Germany (AG Softwaretechnik)
  • University of Stuttgart
    University of Stuttgart
    The University of Stuttgart is a university located in Stuttgart, Germany. It was founded in 1829 and is organized in 10 faculties....

    , Germany (BAUHAUS Group)
  • University of Szeged
    University of Szeged
    The University of Szeged is one of Hungary's most distinguished universities, and is among the most prominent higher education institutions in Central Europe...

    , Hungary (Research Group on Artificial Intelligence)
  • University of Toronto
    University of Toronto
    The University of Toronto is a public research university in Toronto, Ontario, Canada, situated on the grounds that surround Queen's Park. It was founded by royal charter in 1827 as King's College, the first institution of higher learning in Upper Canada...

    , Canada (Software Architecture Group)
  • University of Victoria
    University of Victoria
    The University of Victoria, often referred to as UVic, is the second oldest public research university in British Columbia, Canada. It is a research intensive university located in Saanich and Oak Bay, about northeast of downtown Victoria. The University's annual enrollment is about 20,000 students...

    , Canada (RIGI Group)
  • University of Waterloo
    University of Waterloo
    The University of Waterloo is a comprehensive public university in the city of Waterloo, Ontario, Canada. The school was founded in 1957 by Drs. Gerry Hagey and Ira G. Needles, and has since grown to an institution of more than 30,000 students, faculty, and staff...

    , Canada (Software Architecture Group)
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK