Class TrackingTransformConditionalFunctionInversion
java.lang.Object
org.apache.jena.sparql.algebra.TransformCopy
org.aksw.jenax.sparql.algebra.walker.TrackingTransformCopy<org.aksw.jenax.constraint.api.CBinding>
org.aksw.jenax.sparql.algebra.optimize.TrackingTransformConditionalFunctionInversion
- All Implemented Interfaces:
org.apache.jena.sparql.algebra.Transform
public class TrackingTransformConditionalFunctionInversion
extends TrackingTransformCopy<org.aksw.jenax.constraint.api.CBinding>
This class checks for expressions of the form
[STR(?p) = 'const'] and if valueSpace(?p) is limited to IRI then it rewrites
the expression as [?p = <const>].
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclass -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Map<org.aksw.commons.path.core.Path<String>, Map<org.apache.jena.sparql.expr.Expr, org.aksw.jenax.constraint.api.VSpace>> protected Map<org.aksw.commons.path.core.Path<String>, Map<org.apache.jena.sparql.expr.Expr, org.aksw.jenax.constraint.api.VSpace>> Fields inherited from class org.aksw.jenax.sparql.algebra.walker.TrackingTransformCopy
trackerFields inherited from class org.apache.jena.sparql.algebra.TransformCopy
COPY_ALWAYS, COPY_ONLY_ON_CHANGE -
Constructor Summary
ConstructorsConstructorDescriptionTrackingTransformConditionalFunctionInversion(Tracker<org.aksw.jenax.constraint.api.CBinding> pathState) -
Method Summary
Modifier and TypeMethodDescriptionstatic Map.Entry<org.apache.jena.sparql.expr.NodeValue, org.apache.jena.sparql.expr.Expr> applyInverseFunction(Map.Entry<org.apache.jena.sparql.expr.NodeValue, org.apache.jena.sparql.expr.Expr> e, Map<org.apache.jena.sparql.expr.Expr, org.aksw.jenax.constraint.api.VSpace> exprToValueSpace) org.apache.jena.sparql.algebra.OpVisitorstatic Map<org.apache.jena.sparql.expr.Expr, org.aksw.jenax.constraint.api.VSpace> toExprConstraints(org.aksw.jenax.constraint.api.CBinding crow) org.apache.jena.sparql.algebra.Optransform(org.apache.jena.sparql.algebra.op.OpBGP opBGP) org.apache.jena.sparql.algebra.Optransform(org.apache.jena.sparql.algebra.op.OpFilter opFilter, org.apache.jena.sparql.algebra.Op subOp) Check for filter expressions of the form [str(?Methods inherited from class org.aksw.jenax.sparql.algebra.walker.TrackingTransformCopy
pathMethods inherited from class org.apache.jena.sparql.algebra.TransformCopy
transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform
-
Field Details
-
beforeVisitor
-
beforeConditions
-
afterConditions
-
-
Constructor Details
-
TrackingTransformConditionalFunctionInversion
public TrackingTransformConditionalFunctionInversion(Tracker<org.aksw.jenax.constraint.api.CBinding> pathState)
-
-
Method Details
-
getBeforeVisitor
public org.apache.jena.sparql.algebra.OpVisitor getBeforeVisitor()- Overrides:
getBeforeVisitorin classTrackingTransformCopy<org.aksw.jenax.constraint.api.CBinding>
-
transform
public org.apache.jena.sparql.algebra.Op transform(org.apache.jena.sparql.algebra.op.OpBGP opBGP) - Specified by:
transformin interfaceorg.apache.jena.sparql.algebra.Transform- Overrides:
transformin classorg.apache.jena.sparql.algebra.TransformCopy
-
transform
public org.apache.jena.sparql.algebra.Op transform(org.apache.jena.sparql.algebra.op.OpFilter opFilter, org.apache.jena.sparql.algebra.Op subOp) Check for filter expressions of the form [str(?p) op 'string_literal'] and if ?p is known to be an IRI transform it to [?p op] - Specified by:
transformin interfaceorg.apache.jena.sparql.algebra.Transform- Overrides:
transformin classorg.apache.jena.sparql.algebra.TransformCopy
-
toExprConstraints
public static Map<org.apache.jena.sparql.expr.Expr,org.aksw.jenax.constraint.api.VSpace> toExprConstraints(org.aksw.jenax.constraint.api.CBinding crow) -
applyInverseFunction
-