SPARQL:未解析的前缀名称:dbpprop:author

时间:2015-06-05 09:16:04

标签: java sparql dbpedia

我正在运行此查询。它在DBpedia(http://dbpedia.org/sparql)上运行正常,但它在我的Java代码中不起作用:

PREFIX res: <http://dbpedia.org/resource/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>

SELECT ?book
WHERE {
  ?book a dbpedia-owl:Book .
  ?book dbpprop:author ?author .
  ?author dbpprop:name ?name
  FILTER regex(?name, "Agatha Christie", "i")
}

事实上,正如查询验证器(http://www.sparql.org/query-validator.html)所述:

Line 7, column 9: Unresolved prefixed name: dbpprop:author

为什么它在DBpedia中有效? DBpedia会自动添加缺少的前缀吗?我在哪里可以找到前缀使其在我的Java代码中工作?

1 个答案:

答案 0 :(得分:7)

默认情况下,DBpedia端点了解最常见词汇表的许多最常见前缀。正如KBorja在上面的评论中指出的那样,可以在这里查看:http://dbpedia.org/sparql?nsdecl。所以你想把它添加到你的前缀:

PREFIX dbpprop: <http://dbpedia.org/property/>

除此之外,还有一个非正式的#34;前缀注册表&#34;如果您遇到不知道以下URI的前缀,可以用来猜测:http://prefix.cchttp://prefix.cc/popular/all