27.1.5 XMLファイル形式
Graph ML
グラフ・サーバー(PGX)では、XMLベースのGraph ML形式を使用したファイルからのグラフのロードがサポートされています。すでにメモリー内にあるグラフもGraphMLファイルにエクスポートできます。XMLスキーマの詳細な説明は、GraphMLの仕様を参照してください。
PGXにおけるGraphMLの制限
PGXでは、GraphML形式のすべての機能がサポートされているわけではありません。次のようないくつかの制限があります。
- グラフが無向である(
edgedefault="undirected"
)場合、エッジ・プロパティはサポートされていません - 頂点(エッジ)はすべて、同じ数と型の頂点(エッジ)プロパティを持つ必要があります
port
、default
およびhyperedge
はサポートされていません
例27-6
次のグラフの例は、3つの頂点と3つのエッジで構成されています。各頂点にはnumber
という名前の整数プロパティがあり、各エッジにはlabel
という名前の文字列プロパティがあります。エッジが有向であること、およびプロパティの文字列を(二重)引用符で囲む必要がないことに注意してください。
<?xml version="1.0" encoding="UTF-8"?>
<graphml xmlns="http://graphml.graphdrawing.org/xmlns">
<key attr.name="number" attr.type="integer" for="node" id="number"/>
<key attr.name="label" attr.type="string" for="edge" id="label"/>
<graph edgedefault="directed">
<node id="1">
<data key="number">2</data>
</node>
<node id="2">
<data key="number">45</data>
</node>
<node id="3">
<data key="number">83</data>
</node>
<edge target="2" source="1">
<data key="label">this graph</data>
</edge>
<edge source="3" target="2">
<data key="label">forms a</data>
</edge>
<edge target="1" source="3">
<data key="label">triangle</data>
</edge>
</graph>
</graphml>
注意:
XMLの冗長な性質により、GraphML形式では、他のファイルベースのグラフ形式と比較してオーバーヘッドが大きくなります。ロードまたは格納のパフォーマンスとファイル・サイズを重要な要素として考慮する場合は、別の形式を使用する必要があります。
親トピック: ファイルからのグラフ・データのロード