Skip to content

Interface: ReferenceValue

@kortexya/reasoninglayer


@kortexya/reasoninglayer / ReferenceValue

Defined in: src/types/values.ts:135

A reference to another term, by UUID or by @key designator.

Produces {"type": "Reference", "value": "uuid"} for the id form and {"type": "Reference", "value": {"sort_name": "...", "features": {...}}} for the designator form.

⚠️ That sort_name is the WIRE spelling, written by the engine’s own serde. Through this type the field is spelled sortName and the wire spelling is refused — see ReferenceDesignator, which is the shape value takes.

The two forms are not interchangeable. The designator is a WRITE-side convenience: it RESOLVES to an existing term, and the engine refuses it when nothing matches — it never mints the target. A READ always answers the resolved UUID form, so a response never carries a designator. Measured on 2026-09-18: a term written with {"type":"Reference","value":{"sort_name":"invoice","features":{"number":{"type":"String","value":"INV-1"}}}} reads back as {"type":"Reference","value":"4641cbcb-79f4-413a-b4a4-2ba5d6bebf8d"} — the id of the invoice that already existed — and the invoice extent still held exactly one term.

See ReferenceDesignator for the refusals the designator form can produce.

type: "Reference"

Defined in: src/types/values.ts:136


value: string | ReferenceDesignator

Defined in: src/types/values.ts:137