Skip to content

relecov schema: Major changes #837

@ESapenaVentura

Description

@ESapenaVentura

Description of the issue

We want to apply the following major changes to the schema:

  • Add the keyword unevaluatedProperties to the root of the schemas we generate so that no extra properties are allowed.
  • To avoid getting fields with empty strings (e.g. {'sequencing_sample_id': ''}), add a minLength to the options for the properties.
  • snake_case all properties when possible (enforce style, but don't break the existing database)
  • Add dependentRequired rule to enforce the main property when an if_x_other_specify is present
  • Add rules to enforce if other value, then explaining property must be set

Action Items

  • Change build.py so that it generates the schemas with the keyword unevaluatedProperties and sets it to false
  • Add the parameter to the option column
  • snake_case the properties in the excel template
  • Add column in excel template depends_on
  • Update build.py to pick on new depends_on column to generate dependent fields
  • Add enums for properties that should have it in the excel file
  • Build new schema, upgrading to 4.0.0 (Major changes)
  • Merge PR with changes

Metadata

Metadata

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions