Metreeca Keep
    Preparing search index...

    A node of a flake.

    The common base of every node: the root, each Branch, and each transform stage. Carries the path locating it, the entries it steps into, and the optional retrieval, transform, and constraint slots a query populates.

    type Flake = {
        path: readonly Identifier[];
        pipe: readonly Transform[];
        range: RangeShape;
        drain?: Drain;
        transforms?: Transforms;
        entries?: Entries;
        lt?: Literal;
        gt?: Literal;
        lte?: Literal;
        gte?: Literal;
        like?: string;
        any?: Options;
        all?: Options;
        focus?: Options;
        order?: number;
        offset?: number;
        limit?: number;
    }
    Index

    Properties

    path: readonly Identifier[]

    The address of this node: the Property names walked from the root. Empty at the root.

    pipe: readonly Transform[]

    The transforms applied at this node. Empty except on a transform stage.

    range: RangeShape

    The effective value RangeShape this node resolves to against the flake's driving shape.

    The type and cardinality the node's path and pipe yield, composed across the steps from the root, so a single-valued property under a multi-valued ancestor reports the multi-valued cardinality. It is the transform's output on a transform stage; the entry's effective range on a Branch (an Id / Type marker resolving to the IRI range); the enveloped driving shape on the root Flake. Precomputed so consumers read it directly instead of re-resolving through blue's effective.

    drain?: Drain

    The retrieval requested at this node, in a model- or query-mode flake.

    On a Branch, the fragment requested for the property; on the root Flake, the whole retrieval. A query projecting the node also binds its alias. Absent where nothing is requested.

    transforms?: Transforms

    The transform stages hanging off this node, keyed by the Transform each applies.

    entries?: Entries

    This node's property branches (see Entries).

    Absent where the node has none: scalars, localised ranges, Id / Type markers, and multi-valued properties.

    lt?: Literal

    Strict upper bound constraint (< operator).

    gt?: Literal

    Strict lower bound constraint (> operator).

    lte?: Literal

    Inclusive upper bound constraint (<= operator).

    gte?: Literal

    Inclusive lower bound constraint (>= operator).

    like?: string

    Substring or pattern match constraint (~ operator).

    any?: Options

    Existential set membership constraint ("any of", ? operator).

    all?: Options

    Universal set membership constraint ("all of", ! operator).

    focus?: Options

    Focus boost (+ operator), biasing ranking towards matching resources.

    order?: number

    Sort-key precedence (^ operator). The absolute value sets the position across sort keys; the sign sets the direction.

    offset?: number

    Result-window offset (@ operator).

    limit?: number

    Result-window upper bound (# operator).