2017-01-20 45 views
0

我正在嘗試從dbpedia的書籍中改編出美國電影的列表。這是我到目前爲止:從dbpedia獲取改編成電影的書籍列表

PREFIX onto: <http://dbpedia.org/ontology/> 
PREFIX dcterms: <http://purl.org/dc/terms/> 

SELECT * WHERE { 

?movie dcterms:subject <http://dbpedia.org/resource/Category:American_films> . 
?movie dcterms:subject <http://dbpedia.org/resource/Category:Films_based_on_novels> . 
?movie onto:basedOn ?book . 
?book a onto:Book . 
} 

我只得到4個結果。我可以使用另一個屬性來獲得更多結果嗎?

回答

2

第一件事,嘗試刪除你的模式的第二行 -

PREFIX onto: <http://dbpedia.org/ontology/> 
PREFIX dcterms: <http://purl.org/dc/terms/> 

SELECT * WHERE 
    { 
    ?movie dcterms:subject <http://dbpedia.org/resource/Category:American_films> ; 
      onto:basedOn  ?book . 
    ?book a     onto:Book . 
    } 

你看你做的結果的描述 -

?movie dcterms:subject <http://dbpedia.org/resource/Category:Films_based_on_novels> . 

你會從中獲取a great many more results得到?這將告訴你你可能使用的屬性...

請記住,你受限於DBpedia中的數據,它可能沒有你認爲它應該(例如,並非每一部基於小說的電影都明確按照我所得到的不同結果可以看到),也可能與維基百科同步6個或更多個月。你可以看看DBpedia-live,以便不斷更新攝取。

相關問題