我想获取具有特定 uri ( http://dbpedia.org/page/Weight_gain ) 的页面的 id(或其他信息)。我尝试了这些:(都不起作用)
select ?id WHERE {<http://dbpedia.org/page/Weight_gain>
<http://dbpedia.org/ontology/wikiPageID> ?id}
select ?uri ?id WHERE {?uri <http://dbpedia.org/ontology/wikiPageID> ?id.
FILTER (?uri = <http://dbpedia.org/page/Weight_gain>) }
有什么建议吗?
最佳答案
DBPedia 中的实际资源标识符是http://dbpedia.org/resource/Weight_gain
。您使用的 URL(使用 /page/
而不是 /resource/
)只是 HTML 表示形式的 URL。这不是您在通过 SPARQL 查询时应该使用的 URI。
这应该可以解决问题:
SELECT ?uri ?id
WHERE {
?uri <http://dbpedia.org/ontology/wikiPageID> ?id.
FILTER (?uri = <http://dbpedia.org/resource/Weight_gain>)
}
关于SPARQL查询获取特定uri的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27511519/