sparql - RDFox:本地IRI ':born_in'中的前缀名称尚未绑定(bind)

标签 sparql rdf datalog rdfox

我已将以下三元组导入 RDFox v3:

@prefix : <https://oxfordsemantic.tech/> .

:charlie_chaplin a :ComicActor;
     :name "Charlie Chaplin";
     :born_in :uk .

:douglas_adams a :ComicAuthor ;
     :name "Douglas Adams";
     :born_in  :uk .

:ComicActor  :subClassOf :Comic .
:ComicAuthor :subClassOf :Comic .

从控制台执行以下 SPARQL 查询时:

SELECT ?comic
WHERE {
  ?comic :born_in :uk
}

我收到以下错误: 本地IRI ':born_in'中的前缀名称尚未绑定(bind)。

有什么建议吗? enter image description here

最佳答案

输入数据中用于前缀扩展的 IRI 片段需要用尖括号括起来。

@prefix : <https://oxfordsemantic.tech/> .

即使在导入数据时正确指定了这一点,“默认”前缀“:”也不会作为 SPARQL 查询的一部分提供。将以下行添加到查询中:注意它是 SPARQL 语法,而不是 Turtle。

prefix : <https://oxfordsemantic.tech/> 

Turtle 输入中指定的前缀实际上具有超出初始导入范围的范围:如果前缀作为文件的一部分导入,则当数据从同一 shell session 中的其他文件导入时(甚至导入到其他数据存储)。

但与导入的三元组数据不同,前缀未存储在事件数据存储中,因此 SPARQL 控制台不可用。

关于sparql - RDFox:本地IRI ':born_in'中的前缀名称尚未绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61934113/

相关文章:

rdf - sparql 查询中三元组的顺序会影响结果吗?

使用列表的 Prolog 到 Datalog 代码转换

database - 为什么RDF存储不包含在NoSQL数据库类型中

sparql - RDFox 守护进程端口

sparql - 数据记录规则需要永远计算

java - 使用 sparql、java、Jena API 查询 DBPedia 本体

python - 使用关系运算符的 SPARQL 查询

sparql - 使用 DBPedia 和 SPARQL 获取人员的国籍

sparql - 使用 SPARQL 重复输出结果

java - 如何获得直辖市的国家/地区?