2016-08-19 44 views
6

我有一個dbpedia資源,我想獲取所有與dbpedia相關的類別。爲此我寫了這個SPARQL查詢SPARQL - 選擇與dbpedia資源最相關的類別

SELECT ?p ?o WHERE 
{ 
    <http://dbpedia.org/resource/Rihanna> ?p ?o . 
} 

只關注http://purl.org/dc/terms/subject屬性。

results我已經是一組類別。選擇描述蕾哈娜歌手的最相關類別可能是一種很好的方式?

+1

你如何定義「最相關的」? SPARQL是RDF數據的一種「愚蠢的」查詢語言,因此,在SPARQL的語義中沒有相關性的概念 – AKSW

+1

有人嘗試使用[Page Rank](https:// en)這樣的算法來創建RDF屬性的求和和排序。 .wikipedia.org /維基/網頁級別)。您可以查看[LinkSUM](http://km.aifb.kit.edu/services/link/),並且可以聯繫作者 –

+0

@TomaszPluskiewicz +1獲取LinkSUM參考。它非常有用。 – AndyFaizan

回答

7

這個查詢訂單蕾哈娜的類別的成員在每個類別總數:

SELECT ?category (COUNT(?member) as ?memberCount) WHERE { 
    ?member dct:subject ?category. 
    { SELECT ?category WHERE { dbr:Rihanna dct:subject ?category. } } 
} 
ORDER BY ?memberCount 

這裏的假設是,該名以下的類別有,更高的該類別任何的相關性特定成員。

results for this query列表如下幾類爲最相關的蕾哈娜:

  • 巴巴多斯時裝設計師
  • 愛爾蘭後裔
  • 巴巴多斯基督徒巴巴多斯人
  • 的圭亞那裔巴巴多斯人
  • 巴巴多斯女歌手
+0

你是如何格式化該查詢的結果的? –

+0

@貝利史密斯我沒有,真的。你看到的結果是Virtuoso的輸出。 –