Okay, danke schonmal - dann werde ich meinem Betreuer mal vorschlagen die source und target ID als Attribute zu definieren ...
Das mit GraphML hörte sich zwar im ersten Moment gut an - aber es gibt einen kleinen Pfredefuß: Hierarchische Graphen werden zwar unterstützt, aber nur über die Knoten und nicht über die Kanten ...
Ich zeig' euch einfach mal ein komplettes Dokument (wie es im Moment ist)
XML-Code:
<?
xml version="1.0" encoding="utf-8"?>
<graph>
<subgraph id="0" name="Graph Nr. 0">
<node id="0" />
<node id="1" />
<node id="2" />
<edge isgraph="false">
<source_id>0</source_id>
<target_id>1</target_id>
</edge>
<edge isgraph="true">
<source_id>1</source_id>
<target_id>2</target_id>
<subgraph_id>1</subgraph_id>
</edge>
</subgraph>
<subgraph id="1" name="Graph Nr. 1">
<node id="0" />
<node id="1" />
<node id="2" />
<node id="3" />
<edge isgraph="false">
<source_id>0</source_id>
<target_id>1</target_id>
</edge>
<edge isgraph="false">
<source_id>1</source_id>
<target_id>3</target_id>
</edge>
<edge isgraph="false">
<source_id>0</source_id>
<target_id>2</target_id>
</edge>
<edge isgraph="false">
<source_id>2</source_id>
<target_id>3</target_id>
</edge>
</subgraph>
</graph>
Dazu kommt noch, dass
1. Jede Kante, die keinen Subgraph hat muss eine Task-Element haben. (Auch umgekehrt)
2. Jeder Knoten hat noch eine Liste von Teilen
@himi: Du siehst, "kompakt" wird das nicht
P.S.: Wenn ihr euch darunter nocht nichts vorstellen könnt, kann ich euch auch ein Bild machen, aber die Frage ist erstmal beantwortet