Preserving Type Information in Constructing Schemas
My use case is constructing schemas from existing schemas in a way that preserves type information. E.g. if I change property
foo of schema A, I want that change to be reflected in schema B so that they remain consistent