私は、データ交換の目的でXML形式の有限深度グラフと考えることができる表現について考えています。問題点は、エッジタグ内のノードを参照する方法です。私が見る2つの戦略は、a)一意の識別子の使用、またはb)経路の使用です。XML要素階層参照
ユニークなIDが:
<graph id="g0">
<node id="n0"/>
<node id="n1"/>
<edge from="n1" to="n0"/>
</graph>
<graph id="g1">
<node id="n2"/>
</graph>
<edge from="n2" to="n1"/>
パス:
<graph id="0">
<node id="0"/>
<node id="1"/>
<node id="2"/>
<edge from="1" to="0"/>
<edge from="2" to="1"/>
</graph>
<graph id="1">
<node id="0"/>
</graph>
<edge from="1:0" to="0:2"/>
物事のこれらの種類の標準的な手順は何ですか?私が集めたことから、ユニークな識別子のアプローチがより普及しているようです。グラフが非常に大きくなってきていたときにそれと私の問題があり、そこには:ファイル/ XMLファイルへ
- 必要がエッジがグラフの内部にある場合、冗長パスコンポーネントを省略できないため、パスを使用して記述されたものよりも大きくなります。
思考?
アップデート1:
注そのないつの平坦なグラフこと。その1つまたは複数のグラフが相互接続されている。それらはそれぞれ局所的に索引付けされた要素を持っていますが、それらをすべて平坦化し、それらの両端のエッジを追跡することは厄介です。
アップデート1.1: はGraphMLサブグラフで、彼らは実際にはグローバルなもののうち、ローカルノードIDを分離することが可能となり、複雑なキーを使用しないことに気づきました。
アップデート2:
はい、明らかにこれはうまく形成XMLおよび行方不明タグとスキーマ宣言のすべての種類ではありません。
参考までに、すべてのxmlのルートノードが必要です。あなたが投稿したものは整形式ではありません。 –