The GraphML Schema Documentation

Home Download Specification Examples About
Links:
File Format Links
GXL - an XML-based graph exchange format developed for software re-engineering.

GraphXML - XML-based file format for graphs that was presented at Graph Drawing 2000 and is superseded by GraphML.

GML - a widely used graph exchange format (non-XML).

XGMML - an XML-based file format for graphs based on GML.

SVG - an XML-based graphics format.

Graph Drawing Links
www.graphdrawing.org - home of graph drawing

GD 2004 - 12th Int. Symp. Graph Drawing, 12-14 Sep 2004, Harlem, NYC

XML Links
XML - home of the Extensible Markup Language at the World Wide Web Consortium.

The GraphML Schema version 1.0 is located at http://graphml.graphdrawing.org/xmlns/1.0/graphml-structure.xsd


-> Types

Elements:

desc
Description: Provides human-readable descriptions for the GraphML element containing this <desc> as its first child. Occurence: <key>, <graphml>, <graph>, <node>, <port>, <edge>, <hyperedge>, and <endpoint>.
locator
Description: Graphs and nodes are declared by the elements <graph> and <node>, respectively. The optional <locator>-child of these elements point to their definition. (If there is no <locator>-child the graphs/nodes are defined by their content). Occurence: <graph>, and <node>.
data
Description: In GraphML there may be data-functions attached to graphs, nodes, ports, edges, hyperedges and endpoint and to the whole collection of graphs described by the content of <graphml>. These functions are declared by <key> elements (children of <graphml>) and defined by <data> elements. Occurence: <graphml>, <graph>, <node>, <port>, <edge>, <hyperedge>, and <endpoint>.
key
Description: In GraphML there may be data-functions attached to graphs, nodes, ports, edges, hyperedges and endpoint and to the whole collection of graphs described by the content of <graphml>. These functions are declared by <key> elements (children of <graphml>) and defined by <data> elements. Occurence: <graphml>.
default
Description: In GraphML there may be data-functions attached to graphs, nodes, ports, edges, hyperedges and endpoint and to the whole collection of graphs described by the content of <graphml>. These functions are declared by <key> elements (children of <graphml>) and defined by <data> elements. The (optional) <default> child of <key> gives the default value for the corresponding function. Occurence: <key>.
graphml
Description: <graphml> is the root element of each GraphML document. Occurence: root.
graph
Description: Describes one graph in this document. Occurence: <graphml>, <node>, <edge>, <hyperedge>.
node
Description: Describes one node in the <graph> containing this <node>. Occurence: <graph>.
port
Description: Nodes may be structured by ports; thus edges are not only attached to a node but to a certain port in this node. Occurence: <node>, <port>.
edge
Description: Describes an edge in the <graph> which contains this <edge>. Occurence: <graph>.
hyperedge
Description: While edges describe relations between two nodes, a hyperedge describes a relation between an arbitrary number of nodes. Occurence: <graph>.
endpoint
Description: The list of <endpoints> within a hyperedge points to the nodes contained in this hyperedge. Occurence: <hyperedge>.
News:
coming soon
LEDA extension package for GraphML.
18 March 2003
XML Schema specification and documentation available for GraphML 1.0rc (release candidate)
23 July 2002
GraphML presentation at the annual meeting of DFG Research Priority 1126 Algorithmic Aspects of Large and Complex Networks. (ps, pdf)
28 June 2002
yFiles extension package for GraphML version 1.0 released.
22 May 2002
Release candidates for extensions graphml-attributes (for data attributes) and graphml-parseinfo (for lightweight parsers) completed. See current specification.
12 March 2002
GraphML proposed as the standard format for the network data archive to be created within EU FET Open Project COSIN.