2012-07-29 60 views
1

我不相信維基百科的InfoBoxes到考慮到一個人的名字的各個部分,例如從給定(又名第一或基督教)名稱分隔姓等我可以使用DBpedia引用維基百科上第一個/給定/基督徒的名字嗎?

但我也相信DBpedia中使用其他幾個本體除了它直接從維基百科獲得。

所以我想知道的是,是否有可能做出SPARQL查詢,它將根據他們的名字從維基百科中選擇人員。

例如,我可以查詢All knights of the British empire whose first name is "Tim"

+1

你有什麼試過?你知道一個包含騎士信息的本體論嗎?至於名稱(首先給出),RDF電子名片本體中有這樣的屬性。 – toniedzwiedz 2012-07-29 10:18:24

+0

其實我現在還沒有嘗試過任何東西,因爲即使我喜歡DBPedia,但我真的很喜歡把它用在沒有很多努力的情況下。在這種情況下,信息框中缺少'給定名稱'字段是一個阻礙因素,然後我對各種本體論以及他們如何將DBPedia鏈接到維基百科數據的知識非常模糊。至於騎士們,我認爲維基百科的類別[英帝國騎士團指揮官](http://en.wikipedia.org/wiki/Category:Knights_Commander_of_the_Order_of_the_British_Empire)應該可以做到。 – hippietrail 2012-07-29 10:23:58

回答

3

這裏是類似於你想要的查詢:

SELECT * 
    WHERE 
     { 
     ?person rdf:type yago:BritishKnights . 
     ?person foaf:givenName ?name. 
     FILTER regex(?name, "Walter", "i") 
     } 
LIMIT 100 

它選擇英國一個名爲「沃爾特」騎士。它適用於DBPedia sparql endpoint。我認爲這是一個體面的起點。

你會發現下面的資源非常有用:

  • British Knights - 在這裏你可以找到不僅僅是BritishKnights鏈接到一些更多的資源 - 在我的例子查詢
  • Knights by occupation使用的概念。例如,上述查詢不會返回音樂家和演員,相反,他們可以在不同的類別中找到。

  • Knights - 甚至更普遍的,在這裏你會發現超鏈接描述來自不同國家的騎士資源等

  • Sir - 「先生」的概念
  • Friend Of A Friend - 用於描述人的本體和他們的關係。我用它givenName財產在我的例子
  • vCard RDF ontology - 另一個有名稱的屬性
  • A tutorial上SPARQL過濾

編輯: 蒂姆·伯納斯 - 李也可以找到。英國的榮譽制度似乎並不簡單。祝你好運。這個問題考慮了T.伯納斯李榮幸的騎士的種類。

SELECT * 
WHERE 
    { 
    ?person dcterms:subject category:Knights_Commander_of_the_Order_of_the_British_Empire . 
    ?person foaf:givenName ?name. 
    FILTER regex(?name, "Tim", "i") 
    } 
LIMIT 100 

這是去了解正確的數據集的所有問題。

編輯:

也有可能避免使用FILTER如果使用適當的RDF文字,如:

SELECT ?person 
WHERE 
    { 
    ?person rdf:type yago:BritishKnights . 
    ?person foaf:givenName "Walter"@en . 
    } 

更多這方面的信息可以在w3c specification

+0

嗯,它似乎工作的「沃爾特」,但到目前爲止,我沒有得到它爲「蒂姆」,無論是你的類別或我找到的工作。當一位朋友提到「蒂姆爵士」時,我很想問這個問題,並且我想知道是否在計算上容易得出候選人名單。事實證明,他指的是蒂姆伯納斯李爵士,但顯然至少也有:蒂莫西費瑟森頓爵士,蒂莫西戈爾斯爵士,蒂姆亨特爵士,蒂姆賴斯爵士和蒂姆塞恩斯伯裏爵士。但我想真正的問題可能是不同類型的騎士和凌亂的維基百科分類系統... – hippietrail 2012-07-29 14:55:03

+1

@hippietrail我發現蒂姆伯納斯李先生,檢查我編輯的答案。準備可靠的查詢似乎並不容易。 – toniedzwiedz 2012-07-29 15:44:59

1

被發現我知道這個問題現在已經三年了,但我剛剛發現它,並認爲提供基於wikidata現在存在的解決方案可能很有趣。與維基百科鏈接的這個新的語義數據庫具有允許這種類型的查詢的屬性Given名稱。

prefix wdt: <http://www.wikidata.org/prop/direct/> 
prefix entity: <http://www.wikidata.org/entity/> 
SELECT ?item WHERE { 
    ?tree0 (wdt:P527)* ?item . 
    ?tree0 (wdt:P166|wdt:P361)* entity:Q14420 . 
    ?item wdt:P735 entity:Q1369663 . 
} 

你可以在wikidata query endpoint運行它,此刻也有他們的28,會好奇地想知道,如果你曾與DBpedia中發現的數量是很大的不同。

+0

雖然這種形式非常神祕,但需要所有內部ID或其他正式名稱。 – hippietrail 2015-12-06 12:13:54