{
    "title": "dependencies",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "javaType": "com.sos.joc.model.inventory.changes.common.Change",
    "type": "object",
    "extends": {
        "javaType": "com.sos.joc.model.inventory.changes.common.ChangeIdentifier",
        "type": "object",
        "required": [
            "name"
        ],
        "properties": {
            "name": {
                "type": "string",
                "pattern": "^[^<>]*$",
                "maxLength": 100
            },
            "title": {
                "type": "string",
                "pattern": "^[^<>]*$",
                "maxLength": 255
            },
            "state": {
                "javaType": "com.sos.joc.model.inventory.changes.common.ChangeState",
                "type": "string",
                "enum": [
                    "OPEN",
                    "CLOSED",
                    "PUBLISHED"
                ]
            }
        },
        "additionalProperties": false
    },
    "required": [
        "name"
    ],
    "properties": {
        "created": {
            "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
            "type": "string",
            "format": "date-time"
        },
        "modified": {
            "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
            "type": "string",
            "format": "date-time"
        },
        "closed": {
            "description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
            "type": "string",
            "format": "date-time"
        },
        "owner": {
            "type": "string",
            "pattern": "^[^<>]*$",
            "maxLength": 255
        },
        "lastPublishedBy": {
            "type": "string",
            "pattern": "^[^<>]*$",
            "maxLength": 255
        },
        "configurations": {
            "type": "array",
            "uniqueItems": true,
            "items": {
                "javaType": "com.sos.joc.model.inventory.changes.common.ChangeItem",
                "type": "object",
                "required": [
                    "name",
                    "objectType"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "pattern": "^[^<>]*$",
                        "maxLength": 255
                    },
                    "path": {
                        "description": "absolute path of an object.",
                        "type": "string",
                        "pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
                        "maxLength": 255,
                        "minLength": 1
                    },
                    "objectType": {
                        "javaType": "com.sos.joc.model.inventory.common.ConfigurationType",
                        "type": "string",
                        "enum": [
                            "FOLDER",
                            "WORKFLOW",
                            "JOBCLASS",
                            "JOBRESOURCE",
                            "LOCK",
                            "NOTICEBOARD",
                            "FILEORDERSOURCE",
                            "WORKINGDAYSCALENDAR",
                            "NONWORKINGDAYSCALENDAR",
                            "SCHEDULE",
                            "INCLUDESCRIPT",
                            "JOBTEMPLATE",
                            "DEPLOYMENTDESCRIPTOR",
                            "DESCRIPTORFOLDER"
                        ]
                    },
                    "valid": {
                        "type": "boolean",
                        "default": false
                    },
                    "deployed": {
                        "type": "boolean",
                        "default": false
                    },
                    "released": {
                        "type": "boolean",
                        "default": false
                    }
                },
                "additionalProperties": false
            }
        }
    },
    "additionalProperties": false
}