GraphML
   HOME

TheInfoList



OR:

GraphML is an
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
-based file format for
graphs Graph may refer to: Mathematics *Graph (discrete mathematics), a structure made of vertices and edges **Graph theory, the study of such graphs and their properties *Graph (topology), a topological space resembling a graph in the sense of discre ...
. The GraphML file format results from the joint effort of the
graph drawing Graph drawing is an area of mathematics and computer science combining methods from geometric graph theory and information visualization to derive two-dimensional depictions of graph (discrete mathematics), graphs arising from applications such a ...
community to define a common format for exchanging graph structure data. It uses an XML-based syntax and supports the entire range of possible graph structure constellations including directed, undirected,
mixed graph In graph theory, a mixed graph is a graph consisting of a set of vertices , a set of (undirected) edges , and a set of directed edges (or arcs) . Definitions and notation Consider adjacent vertices u,v \in V. A directed edge, called an arc, ...
s,
hypergraph In mathematics, a hypergraph is a generalization of a graph in which an edge can join any number of vertices. In contrast, in an ordinary graph, an edge connects exactly two vertices. Formally, an undirected hypergraph H is a pair H = (X,E) wh ...
s, and application-specific attributes..


Overview

A GraphML file consists of an XML file containing a graph element, within which is an unordered sequence of node and edge elements. Each node element should have a distinct id attribute, and each edge element has source and target attributes that identify the endpoints of an edge by having the same value as the id attributes of those endpoints. Here is what a simple undirected graph with two nodes and one edge between them looks like: Additional features of the GraphML language allow its users to specify whether edges are directed or undirected, and to associate additional data with vertices or edges.


See also

*
yEd yEd is a general-purpose diagramming program with a multi-document interface. It is a cross-platform application written in Java (programming language), Java that runs on Windows, Linux, Mac OS, and other platforms that support the Java Virtual ...
, a widespread graph editor that uses GraphML as its native file format (but ports, hypergraphs not supported and limited nested graphs support). *
Gephi Gephi ( ) is an open-source network analysis and visualization software package written in Java on the NetBeans platform. History Initially developed by students of the University of Technology of Compiègne (UTC) in France, Gephi has been select ...
, a graph visualization software that supports a limited set of GraphML. *
DOT (graph description language) DOT is a graph description language. DOT graphs are typically files with the filename extension ''gv'' or ''dot''. The extension ''gv'' is preferred, to avoid confusion with the extension ''dot'' used by versions of Microsoft Word before 2007. V ...
* Boost libraries allow to read from and write to GraphML format.


References


External links

*
GraphML PrimerComparison between XML to SVG Transformation Mechanisms
showing conversions between GraphML and SVG {{Graph representations XML markup languages Graph description languages XML-based_standards