63 lines
1.7 KiB
JSON
63 lines
1.7 KiB
JSON
{
|
|
"$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"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |