The URL of RDF source of this source.
Protected ReadonlyselectorProtected ReadonlysourceIf this source may currently return blank nodes. Sources that do not implement this, or that can not know it, must be assumed to return blank nodes.
False if the source certainly returns no blank nodes, true otherwise.
ProtectedgetObtain the cardinality cache for the query execution that the given context belongs to. Returns undefined if the context carries no query execution scope, in which case nothing is cached.
The action context.
ProtectedgetDetermine how many distinct values the given variable of the given pattern takes. Only counted when the source can answer it with an index lookup, and left undefined otherwise.
The pattern being evaluated.
A variable of that pattern.
The cardinality of that pattern.
If the source supports quoted triple filtering.
A value from 0 to 1 indicating to what respect a source type is able to pre-filter the source based on the pattern. 1 indicates that the source can apply the whole pattern, and 0 indicates that the source can not apply the pattern at all (and local filtering must happen). Plain RDF documents for example have a filter factor of 0, while SPARQL endpoints have a filter factor of 1.
Get the selector type that is supported by this source.
Returns a (possibly lazy) stream that returns all bindings matching the operation.
Passed operations MUST conform to the query shape exposed by the selector type returned from getSelectorShape.
The given operation represents a Linked Data Fragments selector.
The returned stream MUST expose the property 'metadata' of type MetadataBindings.
The implementor is reponsible for handling cases where 'metadata'
is being called without the stream being in flow-mode.
This metadata object can become invalidated (see metadata.state),
in which case the 'metadata' property must and will be updated.
The query operation to execute.
The query context.
The resulting bindings stream.
Synchronously returns all bindings of the given operation.
This is optional, and only meant for sources that can answer lookups without I/O.
When present, synchronous should be true in the selector shape, for the operations that can be passed here.
The operation to evaluate.
The query context.
The resulting bindings, or undefined if the operation can not be evaluated synchronously,
in which case queryBindings must be used instead.
Returns a promise resolving to the ask response of the given operation.
This method should only be supported if the selector type returned from getSelectorShape
supports ask queries.
The resulting ask reply.
Returns a (possibly lazy) stream that returns all quads matching the operation.
This method should only be supported if the selector type returned from getSelectorShape
supports construct queries.
The query operation to execute.
The resulting quads stream.
Returns a promise resolving when the given update operation succeeds.
This method should only be supported if the selector type returned from getSelectorShape
supports update queries.
The void response.
ProtectedsetReturns a string representation of this source.
ProtectedtoIn union default graph mode, the pattern to match for a pattern over the default graph, with a variable graph so that it also matches named graphs.
A quad pattern.
If union default graph mode is enabled.
The given pattern, or a new one with a variable graph and the same metadata.
StaticgetDetermine a cardinality cache key for the given (already nullified) quad pattern terms. Returns undefined for patterns that must not be cached, i.e. those containing quoted triples, as those are matched structurally rather than by value.
The quad pattern terms, where undefined represents a wildcard.
StatichasStatichasCheck if the given pattern contains quoted triples with variables, which require post-filtering that sync lookups do not do.
A quad pattern.
StaticisCheck whether counting the given (already nullified) quad pattern is expensive enough to be worth caching.
Patterns with at most one wildcard are answered by a direct index lookup, so counting them is cheap. In bind joins those are the materialized patterns, which differ for every binding, so caching them would only add lookup and storage cost. Patterns with more wildcards require an index walk proportional to their cardinality, and are exactly the patterns that a bind join re-evaluates unchanged once per binding.
The quad pattern terms, where undefined represents a wildcard.
Staticnullify
A lazy query source.