Understand the schema build process and strictness
mainThe build process transforms hand-editable YAML source files into valid JSON Schema output. During this process, several transformations are applied to increase schema strictness:
- Abstract schemas: Used in YAML to maintain DRYness; these are processed out during the build.
- Additional properties: While JSON Schema defaults
additionalPropertiestotrue, the build process sets it tofalseon every object schema unless explicitly specified otherwise, to increase strictness. - Required properties: The build process automatically sets every object property as
required. To define a property as genuinely optional, use the non-standardoptionalkeyword in the YAML source; this keyword is removed during the build.