Required declaration relationships and source evidence
Required declaration relationship inspection is an explicit addition to source or effective inspection. It resolves established sdfRequired references, all directly contained affordance/grouping classes sharing a Given Name, and carrying true markers under RFC 9880 Section 4.5; pointer targets require a declaration position under Section 1.2.3, while standalone carrier markers do not instantiate definitions. Relationship completion remains separate from validity and target capability. Outside authored identities have source evidence and capability not_requested; callers request their effective content separately. Copied pointers relocate by coordinate under ADR 0036: Copied reference relocation. Data-only applicability remains a needed, scoped limitation rather than guessed optionality, following ADR 0006: Scoped reference failures and ADR 0023: Supplied global composition and dependency scope.
Effective nodes retain their initial Declaration contribution before ancestor refinements or content donor substitution. Surviving coordinates retain it; genuinely new or reinserted members use their introducing contribution. Source position is independently established before exposing a source Definition. Current effective coordinates, nearest content origins and importing consumer remain separate, including alternative branch copies, following ADR 0020: Owned effective views and nearest origins and ADR 0024: Effective alternatives and nullable characteristics.
One original work, storage, node and reference allowance covers opted-in selection, preflight, composition, relationship lookup and dependency scope. A collection summary survives semantic retention failure and presentation omission; exactly one inspection unit is counted. A request-specific 1024-byte mandatory report reserve covers direct fixed-field emission with no summary JSON map. Seven exact Counts, bounded printable reasons and one first-failure suffix omission fit a 768-byte wire bound and a 512-byte early human prefix. The incremental borrowed diagnostic reason ownership is bounded by 272 bytes within the reserved 4096-byte ownership share; optional owner DTOs and location omission reasons have separate precharges. The concrete inventory is in the Public workflow and report contract, following ADR 0009: Bounded processing and reporting and ADR 0011: Machine-readable report contracts.
Required relationship inspection examines Model definitions and rejects a Sample root before selection in both views, following ADR 0025: Selected numeric samples. Ordinary raw source inspection of a Sample remains available. Sample sources neither contribute declaration identities nor gain model meaning from SDF-shaped JSON.
Considered Options
Composing every referenced target would introduce hidden capability work and make a known relationship depend on unused descendant failures. Reconstructing declaration evidence from final content origins loses contributions overwritten during ancestor refinement. Omitting an exhausted or completed-empty collection would make absence indistinguishable from unavailable traversal. A general summary JSON map or redundant wire request flag would add avoidable backend capacity and cloning obligations.