| { |
| "$schema": "http://json-schema.org/draft-04/schema#", |
| "title": "Command and Structure Validation in Vulkan", |
| "description": "A database of validatable commands and structures in the Vulkan API", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "version info": { |
| "additionalProperties": false, |
| "properties": { |
| "schema version": {"type": "integer", "const": 2}, |
| "api version": {"type": "string"}, |
| "comment": {"type": "string"}, |
| "date": {"type": "string"} |
| }, |
| "required": [ |
| "schema version", |
| "api version", |
| "comment", |
| "date" |
| ] |
| }, |
| "validation": { |
| "patternProperties": { |
| "^[vV]k[A-Z][A-Za-z0-9]+$": { |
| "title": "Vulkan Command or Structure", |
| "description": "Validation information for a structure or command in the Vulkan API", |
| "patternProperties": { |
| "^[\\w+!|]+$": { |
| "type": "array", |
| "uniqueItems": true, |
| "minItems": 1, |
| "items": |
| { |
| "title": "Valid Usage Statement", |
| "description": "A valid usage statement", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "vuid": { |
| "title": "Valid Usage ID", |
| "description": "String identifier for a valid usage statement, corresponding to an anchor in the spec for that statement", |
| "type": "string", |
| "pattern": "VUID-[vV]k[A-Z][A-Za-z0-9]+-[A-Za-z0-9-]*[A-Za-z0-9]" |
| }, |
| "text": { |
| "title": "Valid Usage Text", |
| "description": "HTML formatted string of the valid usage statement text", |
| "type": "string" |
| } |
| }, |
| "required": [ |
| "vuid", |
| "text" |
| ] |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| } |