2015-04-16 45 views
1

我想獲得」是項目的[屬性]「的列表。查詢DBPedia的「屬性」爲「

例如,Barack Obama on DBPedia同時具有「繼承者」作爲財產和「繼承者」財產(具有不同的繼任者!)。

第一我可以用下面的SPARQL查詢得到:

PREFIX ont: <http://dbpedia.org/ontology/> 
PREFIX obama: <http://dbpedia.org/resource/Barack_Obama> 
SELECT ?successor 
WHERE{ 
    obama: ont:successor ?successor 
} 

如何,都可以得到滿足「是的繼任者」條件的項目清單?

+0

「屬性」是指三重屬性的其他方向。如果您看到「X是Y的[p]」,您可以使用「?y p?x」查詢。 –

回答

1

如果仔細觀察,大部分is [property] of被定義爲has [property]。例如,is successor of定義爲predecessor。因此,在你的情況,你需要查詢更改爲:

PREFIX obama: <http://dbpedia.org/resource/Barack_Obama> 
SELECT * 
WHERE{ 
    obama: dbpprop:predecessor ?successor 
} 

只是探索DBpedia中這樣的事情的主要性能彈出。或者如Jashua提到的改變查詢方向:

PREFIX obama: <http://dbpedia.org/resource/Barack_Obama> 
SELECT * 
WHERE{ 
     ?successor dbpprop:successor obama: 
} 
+0

此問題與[上一個問題](http://stackoverflow.com/q/28765205/1281433)(實際上已發佈接受的答案的一個問題)中提到的問題相同。由於問題是相同的(當我們看到「X [是P的] Y」時,該模式需要是「?y p?x」),我認爲將其標記爲重複可能更有意義。 –

+0

我發佈答案後,我看到了國旗。真的夠了! – Artemis