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 Summary)

Constructors

Properties

beforeActors: Actor<
    IActionRdfJoin,
    IMediatorTypeJoinCoefficients,
    IQueryOperationResultBindings,
    TS,
>[] = []

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

bus: Bus<
    Actor<
        IActionRdfJoin,
        IMediatorTypeJoinCoefficients,
        IQueryOperationResultBindings,
        TS,
    >,
    IActionRdfJoin,
    IMediatorTypeJoinCoefficients,
    IQueryOperationResultBindings,
    TS,
>

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

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

    Parameters

    • ...bindings: Bindings[]

    Returns null | Bindings