Comunica
    Preparing search index...

    Interface IServiceExecutor

    A custom executor that evaluates SERVICE clauses targeting a given IRI, instead of querying that IRI as a source.

    interface IServiceExecutor {
        execute: (
            serviceOperation: Service,
            bindings: Bindings | undefined,
            context: IActionContext,
        ) => Promise<BindingsStream | Iterable<Bindings, any, any>>;
        getMetadata?: (
            serviceOperation: Service,
            context: IActionContext,
        ) => Promise<IServiceExecutorMetadata>;
    }
    Index

    Properties

    execute: (
        serviceOperation: Service,
        bindings: Bindings | undefined,
        context: IActionContext,
    ) => Promise<BindingsStream | Iterable<Bindings, any, any>>

    Evaluate the given SERVICE clause.

    Type Declaration

      • (
            serviceOperation: Service,
            bindings: Bindings | undefined,
            context: IActionContext,
        ): Promise<BindingsStream | Iterable<Bindings, any, any>>
      • Parameters

        • serviceOperation: Service

          The SERVICE clause to evaluate.

        • bindings: Bindings | undefined

          The bindings that the clause is joined with, if it is evaluated as part of a bind-join.

        • context: IActionContext

          The query context.

        Returns Promise<BindingsStream | Iterable<Bindings, any, any>>

        The solutions of the clause, as an iterable of bindings or as a bindings stream.

    getMetadata?: (
        serviceOperation: Service,
        context: IActionContext,
    ) => Promise<IServiceExecutorMetadata>

    Provide metadata about the solutions of the given SERVICE clause before it is evaluated, such as their cardinality, which the query planner uses to plan joins. An infinite cardinality is assumed if none is provided.

    Type Declaration