SchemaDiff with its metadata
SchemaDiff with its metadata
vendor of a schema being changed
name of a schema being changed
source schema version
target schema version
actuall migration data. Ordered map of added Schema properties
This class represents differences between *two* Schemas.
This class represents differences between *two* Schemas. Preserves no order. The essence of Migration
list of properties sorted by their appearance in JSON Schemas
list of properties changed in target Schema; if some property was added in successive Schema and modified after that, it should appear in added
set of keys removed in target Schema
Properly grouped and ordered list of schemas Core migration data structure- no valid migrations can be constructed without knowing it Schemas should always belong to the same vendor/name/model and sorted by schema-creation time (static order can be known only for unambiguous groups) and have all known versions (no gaps) Isomorphic to Iglu Core's SchemaList
(order should not matter at this point)
keys listed in
required
property, whose parents also listed inrequired
some of parent properties still can benull
and thus not requiredkeys that are not primitive, but can contain important information (e.g. nullability)