UNPKG

@jahed/sparql-engine

Version:

SPARQL query engine for servers and web browsers.

16 lines (15 loc) 964 B
import ExecutionContext from "../engine/context/execution-context.ts"; import type { PipelineStage } from "../engine/pipeline/pipeline-engine.ts"; import { PlanBuilder } from "../engine/plan-builder.ts"; import { Bindings } from "../rdf/bindings.ts"; /** * Evaluates a SPARQL FILTER (NOT) EXISTS clause * TODO this function could be simplified using a filterMap like operator, we should check if Rxjs offers that filterMap * @param source - Source {@link PipelineStage} * @param groups - Content of the FILTER clause * @param builder - Plan builder used to evaluate subqueries * @param notexists - True if the filter is NOT EXISTS, False otherwise * @param context - Execution context * @return A {@link PipelineStage} which evaluate the FILTER (NOT) EXISTS operation */ export default function exists(source: PipelineStage<Bindings>, groups: any[], builder: PlanBuilder, notexists: boolean, context: ExecutionContext): PipelineStage<Bindings>;