将RDF(XML或Turtle)导入Neo4j

Mul*_*ard 3 rdf jena neo4j

我下载了Freebase的数据库转储.该文件的格式是rdf turtle.我需要将所有数据都存入neo4j数据库.

我已经在tinkerpop.blueprints的帮助下写了一个导入器.首先它似乎工作,但导致异常发生30分钟后,因为rdf文件包含不允许的位置的字符.稍后(经过一些调查)我发现我使用的jena解析器(RDFReader)已被弃用,不应该使用.

我现在需要知道的是:

有没有办法将该rdf文件导入neo4j?Jena能够将数据转换为七种不同的文件格式:.ttl,.rdf,.ne,.jsonld,.owl,.trig,.nq.

是否有一个(或多个)这些文件格式的导入程序?

Gra*_*eer 6

有一个插件,允许您将RDF数据导入Neo4j.您只需将semantics.liteOntoImport.jar-File放入您的插件文件夹中,然后在您调用的Neo4j命令行中:

CALL semantics.liteOntoImport('file:///filename.owl','RDF/XML')
Run Code Online (Sandbox Code Playgroud)

因此,您的文件应该位于Neo4j的导入目录中.如果不是,您应该输入完整路径.

编辑

相同的过程适用于.xml和.ttl文件,只需更改命令行中的文件类型(第二个参数),例如'TURTLE'.


jja*_*erg 5

如果导入器是指一个可以将RDF文件作为参数传递给它的可执行文件,那么就我所知.你必须编写代码,但可能不是很多.

您最好的选择可能是阅读Neo4j关联数据页面,特别是Michael Bach关于在Neo4j中导入Turtle Ontologies和Stefanie Wiegand关于OWL的博客文章.

既然你提到蓝图,你可能想看一下使用Sesame和Sail.您应该能够将Neo4j视为三重存储,并与Freebase三重存储实现方便的界面一致性.有关如何使用它来导入DBPedia转储的示例,请参阅dbpedia4neo,您的情况应该类似.

但是,您表示无法解析Freebase数据.如果您的数据已损坏,无论您选择如何与Neo4j进行交互,都必须处理该数据.Model对于各种项目,我对Jena的默认和本体都有很好的经验,我不确定为什么你认为不应该使用它们.你需要的是调整你已经编写的导入器而不是一个新的方法吗?

  • 1. Neo4j关联数据导致链接和github项目损坏而没有任何文档.2."导入DBPedia转储,你的情况应该是类似的" - 所以我理解之前没有人做过,没有直接的方法?3.为什么接受这个答案? (5认同)