Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

0047: Context reuse with existing composition

Context draft 06, Section 4.2 permits Context definitions to reuse data descriptions through sdfRef and directs reusable cross-model descriptions into sdfData. Context checking and inspection now support same-document and supplied-Catalogue composition. This supersedes the provisional reference-reuse limitation in ADR 0046: Inline Context draft support for consumers inside Context. Its absent-nullability and undefined-requiredness policies continue to apply to final effective descriptions.

Objects and Things retain their Context groups when reused. References use the existing resolver, JSON Merge Patch, scoped failures, nearest content origins and importing consumers under ADR 0006: Scoped reference failures, ADR 0020: Owned effective views and nearest origins, ADR 0023: Supplied global composition and dependency scope and ADR 0036: Copied reference relocation. There is no Context-specific reference identity or retrieval mechanism.

A Context consumer can reference another Context or its nested data descriptions, including through a composed target path. Its final role keeps absent nullability unavailable even when the source is an ordinary sdfData description. Explicit inherited nullability remains meaningful, and deleting it restores the Context uncertainty. The consuming Context gains no Property characteristics and does not become a mandatory affordance.

Reusing a Context description in a non-Context role remains a scoped unavailable capability. Otherwise an absent default withheld by Context could silently become the base-SDF default. Authors sharing descriptions across roles or models should factor them into sdfData. Supporting that export would require a separate policy for the transferred defaults. Keeping the limitation there allows useful Context composition without resolving the draft’s default conflict.