spiegel-keyman/resources/standards-data/keylayout/keylayout.schema.json

236 lines
6.3 KiB
JSON

{
"$schema": "http://json-schema.org/schema#",
"additionalProperties": false,
"properties": {
"keyboard": {
"additionalProperties": false,
"properties": {
"@_group": {
"type": "string"
},
"@_id": {
"type": "string"
},
"@_maxout": {
"type": "string"
},
"@_name": {
"type": "string"
},
"actions": {
"additionalProperties": false,
"properties": {
"action": {
"items": {
"additionalProperties": false,
"properties": {
"@_id": {
"type": "string"
},
"when": {
"items": {
"additionalProperties": false,
"properties": {
"@_next": {
"type": "string"
},
"@_output": {
"type": "string"
},
"@_state": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"when"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"action"
],
"type": "object"
},
"keyMapSet": {
"items": {
"additionalProperties": false,
"properties": {
"@_id": {
"type": "string"
},
"keyMap": {
"items": {
"additionalProperties": false,
"properties": {
"@_baseIndex": {
"type": "string"
},
"@_baseMapSet": {
"type": "string"
},
"@_index": {
"type": "string"
},
"key": {
"items": {
"additionalProperties": false,
"properties": {
"@_action": {
"type": "string"
},
"@_code": {
"type": "string"
},
"@_output": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"key"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"keyMap"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"layouts": {
"additionalProperties": false,
"properties": {
"layout": {
"items": {
"additionalProperties": false,
"properties": {
"@_first": {
"type": "string"
},
"@_last": {
"type": "string"
},
"@_mapSet": {
"type": "string"
},
"@_modifiers": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"layout"
],
"type": "object"
},
"modifierMap": {
"additionalProperties": false,
"properties": {
"@_defaultIndex": {
"type": "string"
},
"@_id": {
"type": "string"
},
"keyMapSelect": {
"items": {
"additionalProperties": false,
"properties": {
"@_mapIndex": {
"type": "string"
},
"modifier": {
"items": {
"additionalProperties": false,
"properties": {
"@_keys": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"modifier"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"keyMapSelect"
],
"type": "object"
},
"terminators": {
"additionalProperties": false,
"properties": {
"when": {
"items": {
"additionalProperties": false,
"properties": {
"@_output": {
"type": "string"
},
"@_state": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"when"
],
"type": "object"
}
},
"required": [
"layouts",
"modifierMap",
"keyMapSet",
"actions",
"terminators"
]
}
},
"required": [
"keyboard"
],
"title": "C:/Projects/keyman/keyman/resources/standards-data/keylayout/dtd/keylayout.xsd",
"type": "object"
}