0020: Owned effective views and nearest origins
An effective result borrows immutable catalogue sources and owns compact derived records; its typed and generic views borrow that result. Exact scalars retain original lexemes and source locations, while effective locations identify the consuming document and path without fabricated source spans. Additive effective types share the source class and data-role rules, following ADR 0010: Domain-oriented library and caller simplicity and ADR 0013: Shared workflow and report guarantees.
Content explanations identify the nearest source, inheritance, override or deletion contributors. A separate default explanation identifies an established implicit semantic value without inserting JSON or inventing a source. Deleting inherited writable:false therefore retains the deletion explanation and the effective true default explanation at the same absent quality. Known named entries retain their own available or unavailable result, and an unavailable descendant leaves independently established subviews accessible.
Same-document references require established definition or full-data roles. The target’s root-reference chain is composed before the consumer’s RFC 7396 Merge Patch, excluding its sdfRef; surviving nested references are processed afterwards. Missing targets, cycles and unknown needed roles remain scoped limitations, following ADR 0006: Scoped reference failures. Internal copied references relocate to the importing definition, and name references select in the resolved model, following ADR 0036: Copied reference relocation. Ordinary source maps retain literal nulls; only actual consumer patches apply null deletion.
Derived composition, capability establishment, evaluation and generation use precharged explicit frames because derived nesting can exceed original input depth. Source evaluation retains its admitted depth and established traversal order. Aggregate node, allocation, reference and work allowances cover all requested models. The shared evaluator counts distinct observations in composed contexts; unchanged local rules can be skipped only when completed source evaluation, the same role and feature context, and unchanged premises establish that replay would repeat the same observation. Completion evidence is retained for actual local map, named-entry and quality evaluation independently of later descendant failures. Presentation limits do not supply that proof.
Object-dependent map-data required shape checking needs a reliable explicit object type in Full data descriptions and Direct items descriptions. An unchanged required array alone does not prove that containing premise survived composition; conservative changed-context invalidation retains the check when a consumer establishes or removes an object type. Borrowed required_entries() presents nonempty authored syntax, not proof of an applicable object constraint or sample-entry presence. Full descriptions retain documentary syntax access independently of applicability; Direct items descriptions preserve their established object guard. This follows the compound-type and jso-items roles in RFC 9880 Appendix A, without resolving wider direct-item defaults or imports.
Considered Options
Reparsing generated JSON as a source invents source spans and duplicates exact-value storage. Replacing source handles with a composite backing would change their location guarantees. A single provenance accessor cannot preserve both deletion and implicit-default explanations. Skipping unavailable collection entries hides known uncertainty. Eager target-descendant resolution makes deleted references block their consumers. Origin kind alone cannot establish unchanged evaluation context.