Package org.aksw.jenax.arq.util.syntax
Class ElementTransformDatasetDescription
java.lang.Object
org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
org.aksw.jenax.arq.util.syntax.ElementTransformDatasetDescription
- All Implemented Interfaces:
org.apache.jena.sparql.syntax.syntaxtransform.ElementTransform
public class ElementTransformDatasetDescription
extends org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
Rewrites a query's dataset description so that it becomes part of the query pattern.
- Author:
- raven
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.jena.sparql.expr.ExprListprotected Stack<org.apache.jena.graph.Node>protected org.apache.jena.sparql.expr.ExprListprotected org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var>Fields inherited from class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
alwaysCopy -
Constructor Summary
ConstructorsConstructorDescriptionElementTransformDatasetDescription(Stack<org.apache.jena.graph.Node> graphs, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen, org.apache.jena.sparql.expr.ExprList defaultGraphExprs, org.apache.jena.sparql.expr.ExprList namedGraphExprs) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.jena.sparql.syntax.ElementapplyDefaultGraphs(org.apache.jena.sparql.syntax.Element el) static org.apache.jena.sparql.syntax.ElementapplyGraphs(org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen, org.apache.jena.graph.Node gn, org.apache.jena.sparql.syntax.Element elt1, org.apache.jena.sparql.expr.ExprList exprs) static org.apache.jena.sparql.expr.ExprbuildFilterExpr(org.apache.jena.sparql.expr.Expr base, org.apache.jena.sparql.expr.ExprList conditions) In the simplest case this method creates the expression "base IN (exprs)".create(Stack<org.apache.jena.graph.Node> graphs, org.apache.jena.sparql.syntax.Element e, org.apache.jena.sparql.core.DatasetDescription dd, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) static voidstatic org.apache.jena.query.Queryrewrite(org.apache.jena.query.Query query) static org.apache.jena.query.Queryrewrite(org.apache.jena.query.Query query, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) Rewrite a query's from / from named clauses to filter expressions.static org.apache.jena.sparql.syntax.Elementrewrite(org.apache.jena.sparql.syntax.Element element, org.apache.jena.sparql.core.DatasetDescription dd, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) static org.apache.jena.sparql.expr.ExprListtoExprs(Collection<String> iris, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) org.apache.jena.sparql.syntax.Elementtransform(org.apache.jena.sparql.syntax.ElementNamedGraph el, org.apache.jena.graph.Node gn, org.apache.jena.sparql.syntax.Element elt1) org.apache.jena.sparql.syntax.Elementtransform(org.apache.jena.sparql.syntax.ElementPathBlock el) org.apache.jena.sparql.syntax.Elementtransform(org.apache.jena.sparql.syntax.ElementTriplesBlock el) Methods inherited from class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform
-
Field Details
-
defaultGraphExprs
protected org.apache.jena.sparql.expr.ExprList defaultGraphExprs -
namedGraphExprs
protected org.apache.jena.sparql.expr.ExprList namedGraphExprs -
graphs
-
varGen
protected org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen
-
-
Constructor Details
-
ElementTransformDatasetDescription
public ElementTransformDatasetDescription(Stack<org.apache.jena.graph.Node> graphs, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen, org.apache.jena.sparql.expr.ExprList defaultGraphExprs, org.apache.jena.sparql.expr.ExprList namedGraphExprs)
-
-
Method Details
-
toExprs
public static org.apache.jena.sparql.expr.ExprList toExprs(Collection<String> iris, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) -
create
public static ElementTransformDatasetDescription create(Stack<org.apache.jena.graph.Node> graphs, org.apache.jena.sparql.syntax.Element e, org.apache.jena.sparql.core.DatasetDescription dd, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) -
transform
public org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.ElementTriplesBlock el) - Specified by:
transformin interfaceorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransform- Overrides:
transformin classorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
-
transform
public org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.ElementPathBlock el) - Specified by:
transformin interfaceorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransform- Overrides:
transformin classorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
-
applyDefaultGraphs
public org.apache.jena.sparql.syntax.Element applyDefaultGraphs(org.apache.jena.sparql.syntax.Element el) -
buildFilterExpr
public static org.apache.jena.sparql.expr.Expr buildFilterExpr(org.apache.jena.sparql.expr.Expr base, org.apache.jena.sparql.expr.ExprList conditions) In the simplest case this method creates the expression "base IN (exprs)". However, expressions may make use of up to one variable such as REGEX(?x, 'foobar'). That variable can be subsituted by the "base" expression. Hence, in general the returned expression is a disjunction comprising "IN" elements (for constants and variable free function calls) and substituted expressions (for single-variable expressions). The semantics of expressions differ depending on the number of variables:- 0: Effective constants that are matched against the base expressions by value.
- 1: Boolean expressions that are evaluated by substituting their variable with the base expression.
-
applyGraphs
public static org.apache.jena.sparql.syntax.Element applyGraphs(org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen, org.apache.jena.graph.Node gn, org.apache.jena.sparql.syntax.Element elt1, org.apache.jena.sparql.expr.ExprList exprs) -
transform
public org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.ElementNamedGraph el, org.apache.jena.graph.Node gn, org.apache.jena.sparql.syntax.Element elt1) - Specified by:
transformin interfaceorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransform- Overrides:
transformin classorg.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
-
rewrite
public static org.apache.jena.query.Query rewrite(org.apache.jena.query.Query query) -
rewrite
public static org.apache.jena.query.Query rewrite(org.apache.jena.query.Query query, Map<String, org.apache.jena.sparql.expr.Expr> graphToExpr) Rewrite a query's from / from named clauses to filter expressions. Thereby, specific iris can be optionally remapped to alternative expressions.- Parameters:
query-graphToExpr- An optional mapping of graph names to expressions. May be null.- Returns:
-
rewrite
-
main
-