Skip to main content

Module schema_derivation

Module schema_derivation 

Source
Expand description

OP#12 - Schema-vs-schema derivation admission.

Given a chained GTS schema ID like gts.A~B~C~, this module validates that each derived schema may be admitted under its base:

  • B (derived from A) must be admissible under A
  • C (derived from A~B) must be admissible under A~B

Admission requires Valid(derived) ⊆ Valid(base) - every valid instance of the derived schema is also a valid instance of the base. That is the same accepted-instance-set inclusion that schema evolution checks, so this module owns no keyword semantics of its own: it calls the checker in crate::schema_evolution and adds the two admission rules that inclusion alone does not express.