1{ 2 "$schema": "http://json-schema.org/draft-04/schema#", 3 "title": "Command and Structure Validation in Vulkan", 4 "description": "A database of validatable commands and structures in the Vulkan API", 5 "type": "object", 6 "additionalProperties": false, 7 "properties": { 8 "version info": { 9 "additionalProperties": false, 10 "properties": { 11 "schema version": {"type": "integer", "const": 3}, 12 "api version": {"type": "string"}, 13 "comment": {"type": "string"}, 14 "date": {"type": "string"} 15 }, 16 "required": [ 17 "schema version", 18 "api version", 19 "comment", 20 "date" 21 ] 22 }, 23 "validation": { 24 "patternProperties": { 25 "^[vV]k[A-Z][A-Za-z0-9]+$": { 26 "title": "Vulkan Command or Structure", 27 "description": "Validation information for a structure or command in the Vulkan API", 28 "patternProperties": { 29 "^[\\w+!|]+$": { 30 "type": "array", 31 "uniqueItems": true, 32 "minItems": 1, 33 "items": 34 { 35 "title": "Valid Usage Statement", 36 "description": "A valid usage statement", 37 "type": "object", 38 "additionalProperties": false, 39 "properties": { 40 "vuid": { 41 "title": "Valid Usage ID", 42 "description": "String identifier for a valid usage statement, corresponding to an anchor in the spec for that statement", 43 "type": "string", 44 "pattern": "VUID-[vV]k[A-Z][A-Za-z0-9]+-[A-Za-z0-9-]*[A-Za-z0-9]" 45 }, 46 "text": { 47 "title": "Valid Usage Text", 48 "description": "HTML formatted string of the valid usage statement text", 49 "type": "string" 50 }, 51 "page": { 52 "title": "Chapter or document name containing VUID", 53 "description": "String containing a page name in which this VUID lies. Currently unused.", 54 "type": "string" 55 } 56 }, 57 "required": [ 58 "vuid", 59 "text", 60 "page" 61 ] 62 } 63 } 64 } 65 } 66 } 67 } 68 } 69} 70