All Downloads are FREE. Search and download functionalities are using the official Maven repository.

schema.dccmapping.AccessoryAspectMapping.json Maven / Gradle / Ivy

The newest version!
{
    "$schema": "http://json-schema.org/draft-07/schema#",
	"description": "Accessory aspect to DCC accessory mapping in the bidib system.",
    "type": "object",
    "properties": {
        "mappings": {
        	"type": "array", 
		    "items": { "$ref": "#/definitions/dccAccessoryAspectMapping" }
		},
		"history": {
        	"type": "array", 
		    "items": { "$ref": "#/definitions/historyItem" }
		}
    },
    "required": ["mappings"],
    "definitions": {
    	"dccAccessoryAspectMapping": {
            "description": "A DCC accessory and aspect to bidib accessory and aspect mapping following the convention of http://microformats.org/wiki/hcard",
            "type": "object",
            "properties": {
            	"dccAccessoryAspect" : { "$ref": "#/definitions/dccAccessoryAspect" },
            	"bidibAccessoryAspect" : { "$ref": "#/definitions/bidibAccessoryAspect" },
                "validState" : { "$ref": "#/definitions/validState" }
            },
            "required": ["dccAccessoryAspect", "bidibAccessoryAspect"]
         },
        "dccAccessoryAspect": {
            "description": "An DCC accessory address and aspect following the convention of http://microformats.org/wiki/hcard",
            "type": "object",
            "properties": {
                "dccAccessoryAddress" : { "type": "integer" },
                "aspectNumber" : { "type": "integer" },
                "aspectLabel" : { "type": "string" }
            },
            "required": ["dccAccessoryAddress", "aspectNumber"]
        },
        "bidibAccessoryAspect": {
            "description": "An DCC accessory and aspect following the convention of http://microformats.org/wiki/hcard",
            "type": "object",
            "properties": {
            	"uniqueId" : { "type": "string" },
                "accessoryNumber" : { "type": "integer" },
                "accessoryLabel" : { "type": "string" },
                "aspectNumber" : { "type": "integer" },
                "aspectLabel" : { "type": "string" }
            },
            "required": ["uniqueId", "accessoryNumber", "aspectNumber"]
        },
    	"historyItem": {
            "description": "A history item following the convention of http://microformats.org/wiki/hcard",
            "type": "object",
            "properties": {
            	"timestamp" : { "type": "string", "format": "date-time", "customDateTimePattern" : "yyyy-MM-dd'T'HH:mm:ss",
            					"customTimezone": "UTC" },
            	"message" : { "type": "string" }
            },
            "required": ["timestamp", "message"]
        },
          "validState": {
          "description": "The valid state of the mapping.",
          "type": "string",
          "enum": ["valid", "invalid", "out-of-memory"]
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy