Boost logo

Boost :

From: Tiago de Paula Peixoto (tiago_at_[hidden])
Date: 2006-08-09 10:04:59


I've written a graphml reader/writer for BGL, based on the code Douglas
Gregor posted on the boost users list at, and I'm
sending it attached.

It has the following additional features:

* support for attributes of different types (int, float, etc.)
* understand the following parse info attributes: parse.nodeids and
  parse.edgeids. If nodeids or edgeids are canonical,
  they are automatically converted into indexes, and there's no need to
  keep a name map, which saves memory for large graphs.

If there's interest in having this in the library, I would gladly write
documentation for it, and make the necessary modifications/adjustments.


* The code uses some exceptions from the graphviz code. It just seemed
  unnecessary for both codes to return different exceptions. But this is
  is trivially changeable.
* The code depends on expat. And also, when reading some invalid files,
  it sometimes just hangs. This is due, probably, with not setting
  up expat properly to return errors. I would also look into this.

BTW, this was written for the graph-tool project, if anyone is


Tiago de Paula Peixoto <tiago_at_[hidden]>

Boost list run by bdawes at, gregod at, cpdaniel at, john at