Class ActorRdfJoin<TS>Abstract

A comunica actor for joining 2 binding streams.

Actor types:

  • Input: IActionRdfJoin: The streams that need to be joined.
  • Test: IMediatorTypeJoinCoefficients: Join coefficients.
  • Output: IActorRdfJoinOutput: The resulting joined stream.
  • IActionRdfJoin
  • IActorQueryOperationOutput

Type Parameters

Hierarchy (view full)

Constructors

Properties

Actor that must be registered in the bus before this actor.

The bus this actor subscribes to.

canHandleUndefs: boolean

If this actor can handle undefs overlapping variable bindings.

includeInLogs: boolean = true

If this actor will be logged in the debugger and physical query plan logger

isLeaf: boolean

If this join operator will not invoke any other join or query operations below, and can therefore be considered a leaf of the join plan.

limitEntries: number

Can be used by subclasses to indicate the max or min number of streams that can be joined. 0 for infinity. By default, this indicates the max number, but can be inverted by setting limitEntriesMin to true.

limitEntriesMin: boolean

If true, the limitEntries field is a lower limit, otherwise, it is an upper limit.

logicalType: LogicalJoinType
mediatorJoinSelectivity: MediatorRdfJoinSelectivity
name: string

The name for this actor.

{<rdf:subject>}
physicalName: string
requiresVariableOverlap?: boolean

If this join operator must only be used for join entries with (at least partially) common variables.

Methods

  • Helper function to create a new metadata object for the join result. For required metadata entries that are not provided, sane defaults are calculated.

    Parameters

    • entries: IJoinEntry[]

      Join entries.

    • metadatas: MetadataBindings[]

      Metadata of the join entries.

    • context: IActionContext

      The action context.

    • partialMetadata: Partial<MetadataBindings> = {}

      Partial metadata entries.

    • optional: boolean = false

      If metadata for an optional operation must be calculated.

    Returns Promise<MetadataBindings>

  • Get the estimated number of items from the given metadata.

    Parameters

    Returns QueryResultCardinality

    The estimated number of items, or Infinity if cardinality is falsy.

  • Returns the result of joining bindings, or null if no join is possible.

    Parameters

    • Rest...bindings: Bindings[]

    Returns null | Bindings