Readonly
beforeActor that must be registered in the bus before this actor.
Readonly
busThe bus this actor subscribes to.
Readonly
nameThe name for this actor.
Recursively push down the given expression into the given operation if possible. Different operators have different semantics for choosing whether or not to push down, and how this pushdown is done. For every passed operator, it is checked whether or not the filter will have any effect on the operation. If not, the filter is voided.
An expression to push down.
The variables inside the given expression.
The operation to push down into.
An algebra factory.
The action context.
A tuple indicating if the operation was modified and the modified operation.
Protected
getOptional
data: () => anyCheck if the given expression is a simple equals operation with one variable and one non-literal (or literal with canonical lexical form) term that can be pushed into a pattern.
The current expression.
The variable and term to fill into the pattern, or undefined.
Get all directly nested filter expressions. As soon as a non-filter is found, it is returned as the input field.
A filter expression.
Protected
getCollected all sources that are defined within the given operation of children recursively.
An operation.
Protected
isProtected
Check if the given term is a literal with datatype that where all values can only have one possible lexical representation. In other words, no variants of values exist that should be considered equal. For example: "01"^xsd:number and "1"^xsd:number will return false.
An RDF term.
Protected
logOptional
data: () => anyProtected
logOptional
data: () => anyProtected
logOptional
data: () => anyProtected
logOptional
data: () => anyProtected
logOptional
data: () => anyProtected
logOptional
data: () => anyRun the given action on this actor.
In most cases, this method should not be called directly. Instead, #runObservable should be called.
The action to run.
A promise that resolves to the run result.
Run the given action on this actor AND invokes the Bus#onRun method.
The action to run.
A promise that resolves to the run result.
Check if the given filter operation must be attempted to push down, based on the following criteria:
The filter operation
The query sources in the operation
A mapping of sources to selector shapes.
Check if this actor can run the given action, without actually running it.
A promise that resolves to the test result.
Check if all variables from the first list are included in the second list. The second list may contain other variables as well.
A list of variables to search for.
A list of variables to search in.
Static
getGet the logger from the given context.
An optional context.
The logger or undefined.
A comunica Filter Pushdown Optimize Query Operation Actor.