2014-08-27 45 views

回答

0

如果你的XML恰好是GraphML,您可以使用Tinkerpop GraphML Reader阅读那个XML。请注意,这需要neo4j的其他库位于tinkerpop堆栈中,本质上,您将使用蓝图读取GraphML,然后将其写入neo4j图形。

如果您指的是任何自定义类型的XML模式,那么答案是否定的,默认情况下无法轻松完成。 XML是一个层次结构,并且可能甚至没有将XML树中的元素映射到所需neo4j图的节点上。您首先需要将您使用的XML转换为GraphML或CSV,然后使用其中一种现有的加载方法进行加载。

另一种方法是编写解析XML的自定义代码,然后使用Neo4J java API生成新节点。

+1

我经历了GraphML概念。它说GraphML由一个带有图形标签的xml组成,它内部有节点和边缘标签。它是不是像不同的标签结构不同的XML不能被视为广告图ML?是否有可能使用任何工具将自定义xml转换为graphMl?同样在最后,您告诉要使用自定义代码来解析XML。我可以用java做它吗? – shree11 2014-08-28 04:42:19

+1

你可以使用java解析XML,是的。没有工具可以将任何类型的XML转换为GraphML。这真的取决于你正在处理的XML类型。可能有些XML语言具有graphml转换工具,而另一些则没有。如果这是您的自定义XML,那么您将最终编写自定义代码。现在,您可以编写代码以便从XML - > GraphML中加载该代码,然后加载该代码,或者编写代码以跳过GraphML并从XML中直接加载,但无论如何,您都将编写代码。 – FrobberOfBits 2014-08-28 13:20:09

+0

感谢您澄清一些疑虑。假设如果我决定不使用GraphML并编写java代码来解析xml文件,那么在java代码本身中,我是否需要定义节点和关系?或者我该怎么做? – shree11 2014-09-01 05:12:09

相关问题