我正在寻找一种方法,使用Jena框架将此查询的结果添加到2D字符串列表中。
sparqlQueryString="
select distinct ?p ?o where
{
<http://dbpedia.org/resource/NVA_(film)> ?p ?o
}
";
第一行包含属性,第二行包含各自的实例。问题是属性可能有很多实例。
List<List<String>> results= new ArrayList<List<String>>();
query = QueryFactory.create(sparqlQueryString);
qexec = QueryExecutionFactory.sparqlService("http://dbpedia.org/sparql", query);
s = qexec.execSelect();
res = ResultSetFactory.copyResults(s);
while(res.hasNext())
{
QuerySolution so = res.nextSolution();
results.add(so.getResource("p").toString());
// The part I am looking for to add instance
}
// the results expected
results.get(0) = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
results.get(0).get(0) = http://dbpedia.org/class/yago/2005Films
results.get(0).get(1) = http://www.w3.org/2002/07/owl#Thing
results.get(0).get(2) = http://dbpedia.org/ontology/Work
答案 0 :(得分:0)
@AKSW:服务器端解决方案:SPARQL 1.1功能GROUP_CONCAT(有关示例,请参阅W3C建议)。客户端解决方案:Java基础知识。