SPARQL:未解析的前缀名称:dbpprop:author
SPARQL: Unresolved prefixed name: dbpprop:author
我是运行这个查询。它在 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 代码中工作?
默认情况下,DBpedia 端点了解最常见词汇表的许多最常见前缀。正如 KBorja 在上面的评论中指出的那样,可以在此处查找这些内容:http://dbpedia.org/sparql?nsdecl。所以你想把这个添加到你的前缀中:
PREFIX dbpprop: <http://dbpedia.org/property/>
除此之外,还有一个非正式的 "prefix registry",如果您遇到不知道 URI 的前缀:http://prefix.cc or http://prefix.cc/popular/all[=13,您可以使用它来进行很好的猜测=]
我是运行这个查询。它在 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 代码中工作?
默认情况下,DBpedia 端点了解最常见词汇表的许多最常见前缀。正如 KBorja 在上面的评论中指出的那样,可以在此处查找这些内容:http://dbpedia.org/sparql?nsdecl。所以你想把这个添加到你的前缀中:
PREFIX dbpprop: <http://dbpedia.org/property/>
除此之外,还有一个非正式的 "prefix registry",如果您遇到不知道 URI 的前缀:http://prefix.cc or http://prefix.cc/popular/all[=13,您可以使用它来进行很好的猜测=]