{
    "title": "parameters",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "javaType": "com.sos.inventory.model.workflow.Parameters",
    "type": "object",
    "additionalProperties": {
        "javaType": "com.sos.inventory.model.workflow.Parameter",
        "type": "object",
        "required": [
            "type"
        ],
        "properties": {
            "type": {
                "javaType": "com.sos.inventory.model.workflow.ParameterType",
                "type": "string",
                "enum": [
                    "String",
                    "Number",
                    "Boolean",
                    "List"
                ],
                "javaEnumNames": [
                    "String",
                    "Number",
                    "Boolean",
                    "List"
                ]
            },
            "default": {
                "description": "this value has to have the data type of the 'type' attribute",
                "anyOf": [
                    {
                        "type": "string"
                    },
                    {
                        "type": "number"
                    },
                    {
                        "type": "boolean"
                    },
                    {
                        "type": "array"
                    }
                ],
                "javaType": "java.lang.Object"
            },
            "final": {
                "type": "string"
            },
            "listParameters": {
                "javaType": "com.sos.inventory.model.workflow.ListParameters",
                "type": "object",
                "description": "parameters only for parameter type 'List'",
                "additionalProperties": {
                    "javaType": "com.sos.inventory.model.workflow.ListParameter",
                    "type": "object",
                    "required": [
                        "type"
                    ],
                    "description": "parameter type only Number, Boolean or String",
                    "properties": {
                        "type": {
                            "javaType": "com.sos.inventory.model.workflow.ListParameterType",
                            "type": "string",
                            "enum": [
                                "String",
                                "Number",
                                "Boolean"
                            ],
                            "javaEnumNames": [
                                "String",
                                "Number",
                                "Boolean"
                            ]
                        },
                        "default": {
                            "description": "this value has to have the data type of the 'type' attribute",
                            "anyOf": [
                                {
                                    "type": "string"
                                },
                                {
                                    "type": "number"
                                },
                                {
                                    "type": "boolean"
                                }
                            ],
                            "javaType": "java.lang.Object"
                        }
                    },
                    "additionalProperties": false
                }
            },
            "facet": {
                "description": "a regular expression to check the value of the parameter",
                "type": "string"
            },
            "list": {
                "description": "enumeration of possible parameter values",
                "type": "array",
                "items": {
                    "type": "string"
                }
            },
            "message": {
                "description": "a message if the value doesn't match the facet",
                "type": "string"
            }
        },
        "additionalProperties": false
    }
}