2013-05-16 175 views
0

嘿傢伙我有我的sparql查詢有問題任何人都可以幫助我。從dbpedia檢索數據時出錯

String queryString = 
"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>"+ 
"PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>"+ 
"PREFIX type: <http://dbpedia.org/class/yago/>"+ 
"PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>"+ 
"PREFIX prop: <http://dbpedia.org/property/>"+ 
"PREFIX foaf: <http://xmlns.com/foaf/0.1/>"+ 
"SELECT "+ 
"?description "+ 
"FROM <http://dbpedia.org/page/Arctic_Monkeys> "+ 
"WHERE " + 
"{"+ 
"?x foaf:depiction ?description."+ 
"}"; 

Query query = QueryFactory.create(queryString); 
    //initializing queryExecution factory with remote service. 
    QueryExecution qexec=QueryExecutionFactory.sparqlService("http://dbpedia.org/sparql", query); 
    //query execution and result processing 
    try { 
     //simple select 
     ResultSet results = qexec.execSelect(); 
     ResultSetFormatter.out(System.out, results, query); 
    } 
    finally{ 
     qexec.close(); 
    } 
} 

它不檢索從dbpedia中需要的數據。 我想要從一個特定的dbpedia頁面檢索數據

+0

它返回什麼不工作? – greedybuddha

+0

它只返回標題描述,但不是他實際的數據表格dbpedia –

+0

通過「標題描述」,你究竟是什麼意思?您可以在[在線端點](http://dbpedia.org/sparql)(我建議您用它來測試查詢)對DBPedia運行SPARQL查詢。 –

回答

1

您的IRI識別頁面時出錯了。這不是page,而是resource。此外,它是圖中的一個資源,而不是(據我所知)一個命名的圖,因此您的查詢中不需要FROM。這裏是一個可行的查詢:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX type: <http://dbpedia.org/class/yago/> 
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> 
PREFIX prop: <http://dbpedia.org/property/> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 
SELECT ?depiction 
WHERE { 
    <http://dbpedia.org/resource/Arctic_Monkeys> foaf:depiction ?depiction 
} 

results有一個行,北極猴子在玩味精的照片。

+0

謝謝你解決了我的問題 –

+1

很高興聽到它!我沒有使用DBPedia,但我喜歡它在做什麼。最近有很多關於它的問題,我很高興看到人們正在利用它。 –

相關問題