GraphML Download Center
Currently, the GraphML Document Type Definition is a working draft
subject to change without notice. Since GraphML is an extensible
format, several versions of the core DTD are available.
They are provided here for public review and experimentation.
- GraphML DTD
The approach taken in the design of GraphML seperates
graph data into conceptual layers, with a structural layer
as its foundation. This DTD specifies the structural layer
an allows to represent directed, undirected, and mixed graphs,
hypergraphs, hierarchical graphs and attributed graphs with
- GraphML DTD with graph drawing extension
A draft of one of several orthogonal extensions anticipated
for GraphML, augmenting a graph with data relevant in graph
The extension mechanism used in GraphML is designed after
W3 Working Drafts written for the
modularization of XHTML.
To comply with this framework,
the following components of GraphML are also provided.
John Punin has written a
schema for GraphML. His web page also has some documentation.
To gain experience with the format and to demonstrate its usage,
experimental GraphML parsers have been written:
- a Java implementation using Xerces SAX parsing to read and write
GraphML files, with a binding to
written by Markus Eiglsperger and Sascha Meinert (University of
Tübingen). Java archive and source code available.
- a C++ implementation using Xerces DOM parsing to read and write
GraphML files, with a binding to GraphWin (LEDA's graph editor);
written by Jürgen Lerner (University of Konstanz)
Parser and binding have been tested with this
and LEDA 4.2.
Here is an example file
containing the following graph:
Some popular benchmark data sets have been converted into GraphML.
Each contains graphs with 10 to 100 nodes (see the included
log files for additional statistics):