{ "$id": "formStruct", "type": "object", "properties": { "nodeId": { "$ref": "#/definitions/nodeId" }, "type": { "type": "string", "const": "array" }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/container" }, { "$ref": "#/definitions/checkboxField" }, { "$ref": "#/definitions/numberField" }, { "$ref": "#/definitions/textField" } ] } } }, "required": [ "nodeId", "type", "items" ], "additionalProperties": false, "definitions": { "nodeId": { "type": "string", "examples": [ "kdWO-g4oS3GkzrbqDqCZUw" ] }, "container": { "type": "object", "properties": { "nodeId": { "$ref": "#/definitions/nodeId" }, "type": { "type": "string", "const": "array" }, "title": { "type": "string", "examples": [ "Connection Information" ] }, "description": { "type": "string", "examples": [ "This section describes the connection information for a device." ] }, "items": { "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/container" }, { "$ref": "#/definitions/checkboxField" }, { "$ref": "#/definitions/numberField" }, { "$ref": "#/definitions/textField" } ] } } }, "required": [ "nodeId", "type", "title", "description", "items" ], "additionalProperties": false }, "checkboxField": { "type": "object", "properties": { "nodeId": { "$ref": "#/definitions/nodeId" }, "type": { "type": "string", "const": "boolean" }, "title": { "type": "string", "examples": [ "Allow timeout" ] }, "description": { "type": "string", "examples": [ "Is a timeout allowed to pass this step?" ] } }, "required": [ "nodeId", "type", "title", "description" ], "additionalProperties": false }, "numberField": { "type": "object", "properties": { "nodeId": { "$ref": "#/definitions/nodeId" }, "type": { "type": "string", "const": "number" }, "title": { "type": "string", "examples": [ "Retry attempts" ] }, "description": { "type": "string", "examples": [ "The number of connection retries before timing out." ] }, "placeholder": { "type": "string", "examples": [ "Enter connection retry attempt count" ] }, "required": { "type": "boolean" } }, "required": [ "nodeId", "type", "title", "description", "placeholder", "required" ], "additionalProperties": false }, "textField": { "type": "object", "properties": { "nodeId": { "$ref": "#/definitions/nodeId" }, "type": { "type": "string", "const": "string" }, "title": { "type": "string", "examples": [ "Device Name" ] }, "description": { "type": "string", "examples": [ "A unique name of the target device." ] }, "placeholder": { "type": "string", "examples": [ "Enter the device's name" ] }, "required": { "type": "boolean" } }, "required": [ "nodeId", "type", "title", "description", "placeholder", "required" ], "additionalProperties": false } } }