2015-10-11 92 views
2

我試圖從wikidata獲得電影標題與查詢。無法從wikidata獲得電影標題

我已經嘗試過這樣的:

PREFIX wikibase: <http://wikiba.se/ontology#> 
PREFIX wd: <http://www.wikidata.org/entity/> 
PREFIX wdt: <http://www.wikidata.org/prop/direct/> 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX p: <http://www.wikidata.org/prop/> 
PREFIX v: <http://www.wikidata.org/prop/statement/> 

SELECT ?q ?film_title ?actor ?genre WHERE { 
    ?q wdt:P31 wd:Q11424. 
} 

LIMIT 10 

這樣做的輸出是這樣的:WD:Q372

但是我們正在試圖讓這個號碼的MOVIE_TITLE,而不是這個數字。

+0

像「wdt:P31 wd:Q11424」這樣的東西看起來真的很不方便,而且從他們的名字中看不出它們與電影有什麼關係。 DBpedia數據的東西,比如'select?movie?title {movie} dbo:Film; foaf:name?title}'看起來好像很容易。 –

回答

5

每個電影實例(如wd:Q372)的類型都具有某些文字屬性,如標籤(或本例中的電影標題)以及與其他實體(如演員)的某些關係。爲了獲得文字值(如標題等),您需要查詢這些值。例如,這裏是查詢獲取所有的電影名稱,他們的流派和他們的演員(我假設你只需要英文標籤,而我已經將結果限制爲10)。

PREFIX wd: <http://www.wikidata.org/entity/> 
PREFIX wdt: <http://www.wikidata.org/prop/direct/> 
PREFIX wikibase: <http://wikiba.se/ontology#> 
PREFIX p: <http://www.wikidata.org/prop/> 
PREFIX v: <http://www.wikidata.org/prop/statement/> 
PREFIX q: <http://www.wikidata.org/prop/qualifier/> 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

SELECT ?q ?film_title ?actor ?genre WHERE { 
    ?q wdt:P31 wd:Q11424. 
    ?q rdfs:label ?film_title filter (lang(?film_title) = "en"). 
    ?q wdt:P136 ?genreID. 
    ?genreID rdfs:label ?genre filter (lang(?genre) = "en"). 
    ?q wdt:P161 ?actorID. 
    ?actorID rdfs:label ?actor filter (lang(?actor) = "en"). 
}limit 10 
+0

謝謝! <3 <3 <3 – Webdb