Proposal for versioning Schemas
From the Discussions (16.09.22) in CCT1 it is apparent that we need proper versioning for the json schema files. Currently these where changed without a change in version and only the whole 'Category Document' had a single version.
Connected to this: A version key for each record to point to a specific schema version is already in the recordMetadata #35 (closed).
Now to the schema versioning Proposal, after discussing with Anton:
- We change the folder structure from '/hmc_schemas/*.json' to a nested folder structure '/hmc_schemas/{category}/{version}/{category}.json'.
- So each category gets its own version. The folder path will go into the $id key, so the version is implicit in the schema file.
- The schema files of all versions are therefore kept, which is important.
Optional:
- One could introduce an additional 'version' key in each schema, through this would duplicate information. (I am not for this)
- One could also in addition give each 'release' for the whole package of schemas a separate version (as we had before).
Let me know what you think.