Filter instance allows to add as many Expression elements as you want.SparqlRequest request = new SparqlRequest("sitac"); request.addSelect("zone"); request.addAdditionalVariable("index"); request.addType("zone", "TaskZone"); request.addPropertyValue("zone", "isTasked", true); request.addPropertyRef("zone", "hasIndex", "index"); Filter filter = request.addFilter(); VariableExpression varExpr = filter.createVariable("index"); LiteralExpression literal = filter.createLiteral(5); ComparisonExpression comp = new ComparisonExpression(varExpr, ComparisonExpression.LESS, literal); filter.addExpression(comp);Will return the following SPARQL content:
SELECT ?zone WHERE { ?zone rdf:type sitac:TaskZone . ?zone sitac:isTasked "true" . ?zone sitac:hasIndex ?index . FILTER (?index < 5) }
Filter instance allows to add as many Expression elements as you want. SparqlRequest request = new SparqlRequest("sitac"); SelectExpression selectExpr = new SelectExpression("asize", request); request.addAdditionalVariable("x"); request.addAdditionalVariable("size"); FunctionExpression funcExpression = new FunctionExpression(FunctionTypes.FUNCTION_AVG); funcExpression.addArgument(new VariableExpression("size")); selectExpr.setExpression(funcExpression); request.addSelect(selectExpr); request.addPropertyRef("x", ":size", "size"); request.setGroupBy("x"); Filter having = request.addHaving(); ComparisonExpression compExpr = new ComparisonExpression(ComparisonExpression.GREATER); funcExpression = new FunctionExpression(FunctionTypes.FUNCTION_AVG); funcExpression.addArgument(new VariableExpression("size")); compExpr.addExpression(funcExpression); compExpr.addExpression(new LiteralExpression(10)); having.addExpression(compExpr);Will return the following SPARQL content:
SELECT (AVG(?size) AS ?asize) WHERE { ?x :size ?size . } GROUP BY ?x HAVING (AVG(?size) > 10)
Bind instance allows to add as many Expression elements. SparqlRequest request = new SparqlRequest("sitac"); request.addSelect("zone"); request.addAdditionalVariable("index"); request.addType("zone", "TaskZone"); request.addPropertyValue("zone", "isTasked", true); request.addPropertyRef("zone", "hasIndex", "index"); Bind bind = request.addBind("var"); VariableExpression varExpr = bind.createVariable("index"); LiteralExpression literal = bind.createLiteral(2); ArithmeticExpression ar = new ArithmeticExpression(varExpr, ArithmeticExpression.MULTIPLY, literal); bind.addExpression(ar);Will return the following SPARQL content:
SELECT ?zone WHERE { ?zone rdf:type sitac:TaskZone . ?zone sitac:isTasked "true" . ?zone sitac:hasIndex ?index . BIND (?index * 2 as ?var) }
Copyright 2025 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v3 licence
Project Web Hosted by
Copyright 1999-2010 -
Geeknet, Inc., All Rights Reserved
About
-
Legal
-
Help