de.fuberlin.wiwiss.d2rq.engine
Class TransformFilterCNF
java.lang.Object
com.hp.hpl.jena.sparql.algebra.TransformCopy
de.fuberlin.wiwiss.d2rq.engine.TransformFilterCNF
- All Implemented Interfaces:
- Transform
public class TransformFilterCNF
- extends TransformCopy
Checks if any OpFilter
can be split into more
parts by translating it to Conjunctive Normal Form (CNF).
- Author:
- Herwig Leimer, Richard Cyganiak (richard@cyganiak.de)
Methods inherited from class com.hp.hpl.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 |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TransformFilterCNF
public TransformFilterCNF()
transform
public Op transform(OpFilter opFilter,
Op subOp)
- Specified by:
transform
in interface Transform
- Overrides:
transform
in class TransformCopy
translateFilterExpressionsToCNF
public static ExprList translateFilterExpressionsToCNF(OpFilter opFilter)
- Translates all expressions of a filter to the conjunctive normalform.
To get the conjunctive normalform of a term, first the law of DeMorgan and then
the Distributive-law will be applied
- Parameters:
opFilter
- - a Filter with some expressions
- Returns:
- ExprList - every entry of the exprlist is in conjunctive normalform