Skip to content

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.