Type Alias FragmentSelectorShape

FragmentSelectorShape:
    | {
        children?: FragmentSelectorShape[];
        filterBindings?: true;
        joinBindings?: true;
        operation: | { operationType: "type"; type: Algebra.types }
        | { operationType: "pattern"; pattern: Algebra.Operation }
        | { operationType: "wildcard" };
        scopedVariables?: RDF.Variable[];
        type: "operation";
        variablesOptional?: RDF.Variable[];
        variablesRequired?: RDF.Variable[];
    }
    | { children: FragmentSelectorShape[]; type: "conjunction" }
    | { children: FragmentSelectorShape[]; type: "disjunction" }
    | {
        child: FragmentSelectorShape;
        max?: number;
        min?: number;
        type: "arity";
    }

A fragment selector shape determines the shape of selectors that can be executed by a query source. Selectors conforming to this shape represent boolean functions to decide if triples belong to a query response.

Type declaration

  • {
        children?: FragmentSelectorShape[];
        filterBindings?: true;
        joinBindings?: true;
        operation:
            | { operationType: "type"; type: Algebra.types }
            | { operationType: "pattern"; pattern: Algebra.Operation }
            | { operationType: "wildcard" };
        scopedVariables?: RDF.Variable[];
        type: "operation";
        variablesOptional?: RDF.Variable[];
        variablesRequired?: RDF.Variable[];
    }
    • Optionalchildren?: FragmentSelectorShape[]

      Children of this operation.

    • OptionalfilterBindings?: true

      If bindings can be passed into the source as a filter.

    • OptionaljoinBindings?: true

      If bindings can be passed into the source as a join.

    • operation:
          | { operationType: "type"; type: Algebra.types }
          | { operationType: "pattern"; pattern: Algebra.Operation }
          | { operationType: "wildcard" }

      The supported operation.

    • OptionalscopedVariables?: RDF.Variable[]

      Variables that are in-scope in this operation and its children.

    • type: "operation"
    • OptionalvariablesOptional?: RDF.Variable[]

      Variables that may be passed to the selector when instantiated.

    • OptionalvariablesRequired?: RDF.Variable[]

      Variables that must be passed to the selector when instantiated.

  • { children: FragmentSelectorShape[]; type: "conjunction" }
  • { children: FragmentSelectorShape[]; type: "disjunction" }
  • { child: FragmentSelectorShape; max?: number; min?: number; type: "arity" }