[BGL] Asymmetry between read_graphviz() and write_graphviz()
During some experiments with the BGL-GraphViz
interface, I observed a significant asymmetry between a
given DOT graph input with boost::read_graphviz() and
output with boost::write_graphviz() (without changing
any attributes).
Given the input DOT file <metro.dot> (which is, of
course, much longer with the full set of information), the
elementary BGL program <metro.cxx> transforms this
into the output DOT file <metro_boost.dot> (the three
files are attached to this submission).
It seems that somewhere on the way, the graph and
node (and edge) attributes get clobbered. Note that
even the graph name "metro" gets replaced by the name
of the (last) subgraph "ligne_1", and /all/ node attributes
get mixed up. This seems to be somewhat similar to the
recent edge-related problem posted by Hideaki Hiraki to
the boost-users list.
I have not (yet) tried to mess with the graphviz parser
code, so I am asking here for help. Thanks.
Greetings,
Andreas
<andreas dot scherer at rb-its dot de>