我有一个n-三元组格式的rdf文件(file.trp),其中每一行都是一个格式良好的三元组:
主谓宾语
我试图在semweb/rdf_db中使用rdf_load将其加载到内存中,但失败了。以下是我尝试过的:
?- rdf_load('file.trp').
?- rdf_load('file.trp', [format(triples)]).
跟踪显示目标在以下位置失败:
rdf_db:rdf_load_stream/3
打电话
rdf_load_db_/3
它可能是在外部库中定义的。
手册上说它支持xml和三元组。但是它只加载rdf文件。如何加载这样的rdf三重文件?
谢谢你,李
发布于 2013-01-17 02:35:37
库(semweb/rdf_db)可以通过几个插件进行扩展,以支持额外的输入(URL、压缩的、不同的三种格式)。值得注意的是:
发布于 2010-05-26 18:03:55
http://www.swi-prolog.org/pldoc/man?predicate=rdf_load/2建议谓词rdf_load/2
要么支持RDF/XML,要么支持‘内部快速加载和缓存格式’,这可能不是n-三元组格式。
首先,您需要导入以下内容才能使用该谓词:
:- use_module(library(semweb/rdf_db)).
其次,我认为您需要将您的三元组转换成由这个谓词(如RDF/XML )可读的适当格式,并使用如下调用:
rdf_load('file.xml', [format(xml)]).
您可以使用此在线转换器在n-三元组和RDF/XML格式之间进行转换(除其他外)。
https://stackoverflow.com/questions/2860566
复制