2

我想将我的 GraphML 数据导入 Neo4j 数据库(版本 2.0.1)。问题是,如何在 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 可以识别节点标签?

4

2 回答 2

4

不幸的是,我找不到任何有关导入行为的文档。所以我发明了一个解决方法。

我使用以下节点结构将 GraphML 数据集导入到 Neo4j:

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

然后我执行了以下 Cypher 命令:

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

之后,Neo4j 将PAGE标签应用于匹配搜索条件的每个节点。

目前,这种解决方法对我来说是可以接受的。不过,最好找到真正的解决方案(如果有的话)。

于 2014-04-06T18:41:29.867 回答
2

可以使用命令的-t开关导入节点标签import-graphml

neo4j-sh (?)$ help import-graphml

[...]
-t   Import labels from labels node attribute and/or labels property.
于 2014-06-13T17:35:52.923 回答