1

DBpedia几年前我涉足过它并发现它很吸引人,但现在我想在多年未使用它后执行查询,我发现它完全无法理解。

我应该发出什么SPARQL查询来检索同时属于“Category ABC”和“Category XYZ”的所有维基百科页面的集合?

我能找到的所有例子似乎都比我看似基本的问题要复杂得多,因此很难提炼出一些最小的东西。

(作为一个例子,我想找到所有为意大利球队踢过职业足球的澳大利亚球员。)

4

1 回答 1

2

资源和类别之间的链接使用dcterms:subject关系表示(例如,您可以看到Elvis Presley的 DBPedia 表示)。

因此,要查询属于两个类别的所有资源(例如“美国男歌手”和“同卵双胞胎”),只需执行以下操作:

SELECT ?res    
WHERE { 
 ?res dcterms:subject category:American_male_singers, category:Identical_twins .
} 

一般来说,当尝试通过 DBPedia 制定 SPARQL 查询时,首先浏览一下(就像我通过查看 Elvis 页面所做的那样),以尝试找出哪些属性和关系可用是有帮助的。

编辑顺便说一下,上面的查询检索 DBPedia 资源本身。如果您想获取实际的 Wikipedia 页面,您应该像这样调整您的查询:

SELECT ?wikiPage   
WHERE { 
 ?res dcterms:subject category:American_male_singers, category:Identical_twins ;
      foaf:page ?wikiPage .
} 
于 2012-07-03T00:12:15.430 回答