2014-04-06 64 views
1

我想將我的GraphML數據導入到Neo4j數據庫(版本2.0.1)。問題是,我如何在GraphML中指定Neo4j節點標籤?將GraphML導入Neo4j:如何指定節點標籤?

我嘗試以下無濟於事:

<!--This format is used when exporting Neo4j data to GraphML--> 
<node id="1" labels=":PAGE"> 
    <data key="labels">:PAGE</data> 
</node> 

所以,我應該怎麼格式化我的XML這樣的Neo4j可以識別節點標籤?

回答

2

不幸的是,我無法找到有關導入行爲的任何文檔。所以我發明了一種解決方法。

<node id="1"> 
    <!--This code doesn't really force Neo4j to create PAGE label--> 
    <data key="label">PAGE</data> 
</node> 

然後我執行以下的Cypher支架命令::

我使用以下節點結構導入GraphML數據集的Neo4j

MATCH (n) 
WHERE n.label='PAGE' 
SET n :PAGE 

之後,Neo4j的施加PAGE標籤到每個節點那符合搜索條件。

目前,這種解決方法對我來說是可以接受的。儘管(如果有的話)找到真正的解決方案會更好。

+0

你用什麼工具爲graphml導入?也許可以在那裏添加支持? –

+0

來自Neo4j shell的'import-graphml'命令。 –

+0

你可以在那裏提出一個github問題來處理帶有建議的標籤嗎?然後我可以研究它。 –

2

可以使用import-graphml命令的-t開關導入節點標籤。

neo4j-sh (?)$ help import-graphml 

[...] 
-t Import labels from labels node attribute and/or labels property.