| { |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "description": "Schema for CMake file API query.json files", |
| "type": "object", |
| "required": [ |
| "requests" |
| ], |
| "properties": { |
| "requests": { |
| "type": "array", |
| "items": { |
| "type": "object", |
| "required": [ |
| "kind", |
| "version" |
| ], |
| "properties": { |
| "kind": { |
| "type": "string", |
| "description": "Specifies one of the Object Kinds to be included in the reply" |
| }, |
| "version": { |
| "description": "Version(s) of the object kind that the client understands", |
| "oneOf": [ |
| { |
| "$ref": "#/definitions/versionMajorOnly" |
| }, |
| { |
| "$ref": "#/definitions/versionObject" |
| }, |
| { |
| "type": "array", |
| "items": { |
| "oneOf": [ |
| { |
| "$ref": "#/definitions/versionMajorOnly" |
| }, |
| { |
| "$ref": "#/definitions/versionObject" |
| } |
| ] |
| } |
| } |
| ] |
| }, |
| "client": { |
| "description": "Optional member reserved for use by the client. This value is preserved in the reply." |
| } |
| } |
| } |
| }, |
| "client": { |
| "description": "Optional member reserved for use by the client. This value is preserved in the reply." |
| } |
| }, |
| "$comment": "Other top level properties are reserved for future use. If present, they are ignored for forward compatibility.", |
| "additionalProperties": true, |
| "definitions": { |
| "versionMajorOnly": { |
| "type": "integer", |
| "description": "A non-negative major version number", |
| "minimum": 0 |
| }, |
| "versionObject": { |
| "type": "object", |
| "required": [ |
| "major" |
| ], |
| "properties": { |
| "major": { |
| "type": "integer", |
| "description": "The major version number", |
| "minimum": 0 |
| }, |
| "minor": { |
| "type": "integer", |
| "description": "The minor version number", |
| "minimum": 0 |
| } |
| }, |
| "additionalProperties": false |
| } |
| } |
| } |