CONCEPT Cited by 1 source
Conservative extension¶
Definition¶
In logic + formal methods, a theory T' is a conservative extension of a theory T when:
- T' extends T — every theorem of T is a theorem of T'.
- T' does not add new theorems in T's vocabulary — anything T' proves using only T's vocabulary, T already proved.
Informally: T' adds new stuff (vocabulary + axioms) but cannot change what T already said about T's own terms. Adding is safe; retraction or contradiction is impossible by construction.
(Wikipedia: Conservative extension)
Why UDA relies on this property¶
Netflix's UDA post uses the term explicitly as the composition rule for domain models:
"Because all domain models are conservative extensions of Upper, other system domain models — including those for GraphQL, Avro, Data Mesh, and Mappings — integrate seamlessly into the same runtime, enabling consistent data semantics and interoperability across schemas." (sources/2025-06-14-netflix-model-once-represent-everywhere-uda)
Without the conservative-extension property, every new domain model Netflix adds to UDA would risk silently redefining an upstream concept — breaking semantic integration. With it, loading a new domain can only enrich the global semantics; it cannot contradict existing ones.
Operational payoffs¶
- Safe modularity. New domains are strictly additive; any team can author a new Upper-extending domain without fear of breaking other teams' deployments.
- Safe system-domain introduction. Netflix's GraphQL / Avro / Data Mesh / Mappings system-domain models integrate "seamlessly into the same runtime" because each is a conservative extension of Upper.
- Safe schema evolution. The equivalence in the data world is backward-compatible schema change (concepts/schema-evolution, concepts/backward-compatibility) — conservative extension is the semantic-level analog.
- Runtime guarantees compose. Any invariant proven over Upper
- one domain still holds after adding a second domain, since the second domain can't contradict the first.
Relationship to monotonic extension¶
The UDA post also uses the adjacent term monotonic contribution:
"Keyed concepts can also be extended from other domain models — that is, new attributes and relationships can be contributed monotonically."
Monotonic extension means new facts / axioms can be added but none can be retracted. Conservative extension is the stricter property that also guarantees the added axioms don't produce new consequences in the original vocabulary. Upper's design enforces both simultaneously.
Why this matters beyond UDA¶
Conservative extension is a useful lens for any evolvable metamodel / schema-registry / API-contract design:
- Schema registries with compat modes (Avro BACKWARD, FULL, etc.) enforce weaker versions of this property.
- Plugin systems that let third parties extend a core ABI ideally require that plugins cannot change the semantics of existing ABI calls.
- Feature flags with soak periods are a safety mechanism for changes that don't meet the bar for true conservative extension.
Seen in¶
- sources/2025-06-14-netflix-model-once-represent-everywhere-uda — canonical wiki instance. UDA uses conservative extension as the formal composition rule that makes Upper + domain-model layering safe.
Related¶
- systems/netflix-uda · systems/netflix-upper — the deployment that relies on this property.
- concepts/metamodel · concepts/upper-ontology · concepts/domain-model — the structures conservative extension composes.
- concepts/schema-evolution · concepts/backward-compatibility — data-world analogs of the formal property.
- patterns/self-referencing-metamodel-bootstrap — Upper's self-hosting design; composes cleanly with conservative extension.
- patterns/model-once-represent-everywhere — the pattern this property makes safe at scale.