簡體   English   中英

使用Jena在DBpedia上創建SPARQL查詢

[英]Using Jena to create a SPARQL query on DBpedia

我試圖使用Jena創建一個SPARQL查詢來查詢DBpedia。

當我將它與獨立工具(Twinkle)一起使用時,查詢正在工作,但當我將其插入此Java代碼時,它返回一個空集。

String sparqlQueryString1 = "PREFIX dbont: <http://dbpedia.org/ontology/> " +
        "PREFIX dbp: <http://dbpedia.org/property/>" +
        "PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>" +
        "   SELECT ?musician  ?place" +
        "   FROM<http://dbpedia.org/resource/Daphne_Oram>" +
        "   WHERE { " +
        "       ?musician dbont:birthPlace ?place ." +
        "   }";

Query query = QueryFactory.create(sparqlQueryString1);
QueryExecution qexec = QueryExecutionFactory.sparqlService("http://dbpedia.org/sparql", query);

ResultSet results = qexec.execSelect();
ResultSetFormatter.out(System.out, results, query);       

qexec.close() ;

我有什么想法我做錯了嗎?

問題是你的FROM <...>子句。 刪除它,一切都很好。 使用該子句我懷疑端點是將查詢限制為具有該名稱的圖形,但是不存在這樣的圖形,因此沒有結果。

令人困惑的是,似乎查詢在http://dbpedia.org/sparql上的表單上工作。 但是,設置了默認圖形URI,因此查詢也會覆蓋該圖形。 清除它,查詢不起作用。 作為替代方案,您可以將其設置為檢索遠程數據。 這引入了命名的rdf,它提到了三個出生地。

如果您正試圖找到該音樂家使用的出生地:

{ <http://dbpedia.org/resource/Daphne_Oram> dbont:birthPlace ?place . }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM