我要尝试使用Jena 2.11从Java代码对http://lod.openlinksw.com/sparql执行一组SPARQL查询。
这是我的示例代码:
Try{
String SPARQLquery="SELECT (COUNT(DISTINCT ?P) AS ?COUNT) "
+"WHERE{"
+" values ?S {<"+MyResource1+">}."
+" values ?O {<"+MyResource2+">}."
+" ?S ?P ?O."
+ "}";
QueryExecution qe =QueryExecutionFactory.sparqlService("http://lod.openlinksw.com/sparql", SPARQLquery);
com.hp.hpl.jena.query.ResultSet results = queryExec.execSelect();
} catch (Exception e){
e.printStackTrace();
System.exit(1);
}
问题在于,当OpenLink服务器暂时关闭时,它返回错误的结果(在我的示例中为错误的“ COUNT”),而不是返回错误代码。
在我的任务中,重要的是要检测返回的结果是正确还是错误,因为我必须执行数千个查询而没有时间检查每个查询的结果。
当我检测到第一个错误结果时,最好停止循环。
谢谢