type: object additionalProperties: false properties: project: type: object additionalProperties: false properties: homepage: type: [ string, 'null' ] description: url of the project's homepage examples: - https://github.com/yanick/app-changelord name: type: [ 'null', string ] description: name of the project examples: - App::Changelord change_types: type: array items: type: object additionalProperties: false properties: keywords: type: array items: { type: string } level: { enum: [ major, minor, patch ] } title: { type: string } releases: type: array items: oneOf: - type: string - type: object additionalProperties: false properties: version: { type: string } date: { type: ['null',string] } changes: { type: 'array', items: { $ref: '#/$defs/change' } } $defs: change: type: object required: [ desc ] additionalProperties: false properties: desc: { type: string } ticket: { type: [ string, 'null' ] } type: { type: [ string, 'null' ] }