我想获得sparql查询结果的总数 . 我在java中使用jena API . count查询在virtuoso中工作,但它不能使用jena api在java中工作 .
Sparql Query:
select ( count ( ?name ) AS ?total ) from < mygraph >
where { ?name rdf:type foaf:Name}
它不适用于jena API . 我已阅读http://www.w3.org/2001/sw/DataAccess/issues#countAggregate所以我认为它不适用于rdf,但它在Virtuoso sparql编辑器中工作 . 所以,如果你有一个解决方案,那么请告诉我 . 并告诉我是否有其他解决方案 .
谢谢
这是我的java代码,
String countQueryString="select ( count ( ?name ) AS ?total ) from < mygraph >
where { ?name rdf:type foaf:Name}";
Query selectQuery = QueryFactory.create(countQueryString);
QueryExecution qe = QueryExecutionFactory.sparqlService(Constant.SPARQL_ENDPOINT, selectQuery);
Resultset results=qe.execSelect();
if(results.hasNext())
{
totalCount=countResult.next().get("total").toString();
}
下面是异常:HttpException:HttpException:400 Bad Request:HttpException:400 Bad Request .....
1 回答
查看ARQ文档以获得聚合支持(我遇到过类似的问题)
http://jena.apache.org/documentation/query/group-by.html
它似乎不支持
在过去,我还尝试删除聚合投影周围的括号,即:
但这是因为Virtuoso实际上遇到了问题 .