{ "$schema": "http://json-schema.org/schema#", "title": "xAAL Message Definition", "description": "General form of an xAAL message", "license": "LGPLv3+ Christophe Lohr Telecom Bretagne 2014", "licenseref": "http://www.gnu.org/licenses/lgpl.txt", "type": "object", "properties": { "header": { "type": "object", "properties": { "version": { "type": "string" }, "source": { "type": "string", "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, "target": { "type": "string", "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, "msgType": { "enum": [ "request", "reply", "notify" ] }, "devType": { "type": "string", "pattern": "^[a-zA-Z][a-zA-Z0-9_-]*.[a-zA-Z][a-zA-Z0-9_-]*$" }, "action": { "type": "string" }, "cipher": { "enum": [ "none", "md5" ] }, "signature": { "type": "string" } }, "required": [ "version", "source", "target", "msgType", "devType", "action", "cipher", "signature" ], "additionalProperties": false }, "body": { "type": "object" } }, "required": [ "header" ], "additionalProperties": false }