{
	"title": "workflow dependencies",
	"$schema": "http://json-schema.org/draft-04/schema#",
	"javaType": "com.sos.joc.model.workflow.WorkflowDeps",
	"type": "object",
	"properties": {
		"deliveryDate": {
			"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
			"type": "string",
			"format": "date-time"
		},
		"surveyDate": {
			"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
			"type": "string",
			"format": "date-time"
		},
		"workflow": {
			"javaType": "com.sos.controller.model.workflow.WorkflowDeps",
			"type": "object",
			"extends": {
				"javaType": "com.sos.controller.model.workflow.Workflow",
				"type": "object",
				"extends": {
					"javaType": "com.sos.inventory.model.workflow.Workflow",
					"type": "object",
					"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
					"com.sos.joc.model.common.IDeployObject",
					"com.sos.inventory.model.common.IInventoryObject"],
					"required": ["instructions",
					"jobs"],
					"propertyOrder": ["TYPE",
					"version",
					"versionId",
					"timeZone",
					"title",
					"documentationName",
					"orderPreparation",
					"jobResourceNames",
					"instructions",
					"jobs"],
					"description": "deploy object with fixed property 'TYPE':'Workflow'",
					"properties": {
						"TYPE": {
							"javaType": "com.sos.inventory.model.deploy.DeployType",
							"type": "string",
							"enum": ["Workflow",
							"JobClass",
							"Lock",
							"FileWatch",
							"JobResource",
							"Board"],
							"javaEnumNames": ["Workflow",
							"JobClass",
							"Lock",
							"FileWatch",
							"JobResource",
							"Board"],
							"default": "Workflow"
						},
						"version": {
							"description": "inventory repository version",
							"type": "string",
							"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
							"default": "1.0.0",
							"maxLength": 10
						},
						"versionId": {
							"type": "string",
							"pattern": "^[^<>]*$",
							"maxLength": 255
						},
						"timeZone": {
							"type": "string",
							"default": "Etc/UTC"
						},
						"title": {
							"type": "string",
							"pattern": "^[^<>]*$",
							"maxLength": 255
						},
						"documentationName": {
							"type": "string",
							"pattern": "^[^<>]*$",
							"maxLength": 255
						},
						"orderPreparation": {
							"javaType": "com.sos.inventory.model.workflow.Requirements",
							"type": "object",
							"alias": "orderRequirements",
							"properties": {
								"parameters": {
									"javaType": "com.sos.inventory.model.workflow.Parameters",
									"type": "object",
									"additionalProperties": {
										"javaType": "com.sos.inventory.model.workflow.Parameter",
										"type": "object",
										"required": ["type"],
										"description": "parameters only for parameter type 'List'",
										"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",
												"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"]
														}
													},
													"additionalProperties": false
												}
											}
										},
										"additionalProperties": false
									}
								},
								"allowUndeclared": {
									"type": "boolean",
									"default": false
								}
							},
							"additionalProperties": false
						},
						"jobResourceNames": {
							"alias": "jobResourcePaths",
							"type": "array",
							"items": {
								"type": "string",
								"pattern": "^[^<>]*$",
								"maxLength": 255
							}
						},
						"instructions": {
							"type": "array",
							"minItems": 1,
							"items": {
								"javaType": "com.sos.inventory.model.instruction.Instruction",
								"type": "object",
								"required": ["TYPE"],
								"properties": {
									"TYPE": {
										"javaType": "com.sos.inventory.model.instruction.InstructionType",
										"type": "string",
										"enum": ["Execute.Named",
										"If",
										"Try",
										"Fork",
										"ForkList",
										"Finish",
										"Fail",
										"Retry",
										"Lock",
										"Prompt",
										"PostNotice",
										"ExpectNotice",
										"ImplicitEnd",
										"AddOrder"]
									},
									"position": {
										"description": "Actually, each even item is a string, each odd item is an integer",
										"type": "array",
										"items": {
											"anyOf": [{
												"type": "integer"
											},
											{
												"type": "string"
											}]
										}
									},
									"positionString": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"additionalProperties": false
							}
						},
						"jobs": {
							"javaType": "com.sos.inventory.model.workflow.Jobs",
							"type": "object",
							"additionalProperties": {
								"javaType": "com.sos.inventory.model.job.Job",
								"type": "object",
								"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject"],
								"required": ["agentName",
								"executable"],
								"description": "returnCodeMeaning is deprecated: moved to ShellScriptExecutable",
								"properties": {
									"agentName": {
										"alias": "agentId,agentPath",
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255,
										"minLength": 1
									},
									"executable": {
										"javaType": "com.sos.inventory.model.job.Executable",
										"oneOf": [{
											"javaType": "com.sos.inventory.model.job.ExecutableScript",
											"type": "object",
											"extends": {
												"javaType": "com.sos.inventory.model.job.Executable",
												"type": "object",
												"required": ["TYPE"],
												"properties": {
													"TYPE": {
														"javaType": "com.sos.inventory.model.job.ExecutableType",
														"type": "string",
														"enum": ["ShellScriptExecutable",
														"ScriptExecutable",
														"InternalExecutable"],
														"javaEnumNames": ["ShellScriptExecutable",
														"ScriptExecutable",
														"InternalExecutable"]
													}
												},
												"additionalProperties": false
											},
											"required": ["script"],
											"propertyOrder": ["TYPE",
											"script",
											"env",
											"v1Compatible"],
											"description": "executable with fixed property 'TYPE':'ShellScriptExecutable'",
											"properties": {
												"script": {
													"type": "string",
													"minLength": 1
												},
												"env": {
													"description": "a map for arbitrary key-value pairs",
													"javaType": "com.sos.inventory.model.job.Environment",
													"type": "object",
													"additionalProperties": {
														"type": "string"
													}
												},
												"v1Compatible": {
													"type": "boolean",
													"default": false
												},
												"returnCodeMeaning": {
													"javaType": "com.sos.inventory.model.job.JobReturnCode",
													"type": "object",
													"oneOf": [{
														"required": ["success"]
													},
													{
														"required": ["failure"]
													}],
													"properties": {
														"success": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														},
														"failure": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														}
													},
													"additionalProperties": false
												},
												"login": {
													"type": "object",
													"javaType": "com.sos.inventory.model.job.ExecutableScriptLogin",
													"properties": {
														"credentialKey": {
															"type": "string"
														},
														"withUserProfile": {
															"type": "boolean",
															"default": false
														}
													},
													"additionalProperties": false
												}
											},
											"additionalProperties": false
										},
										{
											"javaType": "com.sos.inventory.model.job.ExecutableJava",
											"type": "object",
											"extends": {
												"javaType": "com.sos.inventory.model.job.Executable",
												"type": "object",
												"required": ["TYPE"],
												"properties": {
													"TYPE": {
														"javaType": "com.sos.inventory.model.job.ExecutableType",
														"type": "string",
														"enum": ["ShellScriptExecutable",
														"ScriptExecutable",
														"InternalExecutable"],
														"javaEnumNames": ["ShellScriptExecutable",
														"ScriptExecutable",
														"InternalExecutable"]
													}
												},
												"additionalProperties": false
											},
											"required": ["className"],
											"propertyOrder": ["TYPE",
											"className"],
											"description": "executable with fixed property 'TYPE':'InternalExecutable'",
											"properties": {
												"className": {
													"type": "string",
													"minLength": 1
												},
												"jobArguments": {
													"description": "a map for arbitrary key-value pairs",
													"javaType": "com.sos.inventory.model.common.Variables",
													"type": "object",
													"additionalProperties": true
												},
												"arguments": {
													"description": "a map for arbitrary key-value pairs",
													"javaType": "com.sos.inventory.model.job.Environment",
													"type": "object",
													"additionalProperties": {
														"type": "string"
													}
												}
											},
											"additionalProperties": false
										}]
									},
									"admissionTimeScheme": {
										"javaType": "com.sos.inventory.model.job.AdmissionTimeScheme",
										"type": "object",
										"required": ["periods"],
										"properties": {
											"periods": {
												"type": "array",
												"items": {
													"javaType": "com.sos.inventory.model.job.AdmissionTimePeriod",
													"type": "object",
													"properties": {
														"TYPE": {
															"description": "only yet 'WeekdayPeriod'",
															"type": "string"
														},
														"secondOfWeek": {
															"type": "integer",
															"minimum": 0
														},
														"duration": {
															"type": "integer",
															"minimum": 0
														}
													},
													"additionalProperties": false
												}
											}
										},
										"additionalProperties": false
									},
									"returnCodeMeaning": {
										"javaType": "com.sos.inventory.model.job.JobReturnCode",
										"type": "object",
										"oneOf": [{
											"required": ["success"]
										},
										{
											"required": ["failure"]
										}],
										"properties": {
											"success": {
												"type": "array",
												"minItems": 1,
												"items": {
													"type": "integer"
												}
											},
											"failure": {
												"type": "array",
												"minItems": 1,
												"items": {
													"type": "integer"
												}
											}
										},
										"additionalProperties": false
									},
									"parallelism": {
										"alias": "taskLimit",
										"type": "integer",
										"minimum": 1,
										"default": 1
									},
									"timeout": {
										"type": "integer",
										"minimum": 0
									},
									"graceTimeout": {
										"alias": "sigkillDelay",
										"description": "in seconds",
										"type": "integer",
										"minimum": 0,
										"default": 15
									},
									"failOnErrWritten": {
										"type": "boolean",
										"default": false
									},
									"jobClass": {
										"description": "absolute path of an object.",
										"type": "string",
										"pattern": "^(/|(/[^/\\<>?:\"|*]+)+)$",
										"maxLength": 255,
										"minLength": 1
									},
									"defaultArguments": {
										"description": "a map for arbitrary key-value pairs",
										"javaType": "com.sos.inventory.model.job.Environment",
										"type": "object",
										"additionalProperties": {
											"type": "string"
										}
									},
									"jobResourceNames": {
										"alias": "jobResourcePaths",
										"type": "array",
										"items": {
											"type": "string",
											"pattern": "^[^<>]*$",
											"maxLength": 255
										}
									},
									"title": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"documentationName": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"criticality": {
										"javaType": "com.sos.inventory.model.job.JobCriticality",
										"type": "string",
										"enum": ["NORMAL",
										"CRITICAL"]
									},
									"warnIfShorter": {
										"type": "integer",
										"minimum": 0
									},
									"warnIfLonger": {
										"type": "integer",
										"minimum": 0
									}
								},
								"additionalProperties": false
							}
						}
					},
					"additionalProperties": false
				},
				"properties": {
					"path": {
						"description": "absolute path of an object.",
						"type": "string",
						"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
						"maxLength": 255,
						"minLength": 1
					},
					"isCurrentVersion": {
						"type": "boolean",
						"default": true
					},
					"versionDate": {
						"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
						"type": "string",
						"format": "date-time"
					},
					"state": {
						"javaType": "com.sos.controller.model.common.SyncState",
						"type": "object",
						"required": ["severity",
						"_text"],
						"properties": {
							"severity": {
								"type": "integer"
							},
							"_text": {
								"javaType": "com.sos.controller.model.common.SyncStateText",
								"type": "string",
								"enum": ["IN_SYNC",
								"NOT_IN_SYNC",
								"UNKNOWN"]
							}
						}
					},
					"fileOrderSources": {
						"type": "array",
						"items": {
							"javaType": "com.sos.controller.model.fileordersource.FileOrderSource",
							"type": "object",
							"extends": {
								"javaType": "com.sos.inventory.model.fileordersource.FileOrderSource",
								"type": "object",
								"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
								"com.sos.joc.model.common.IDeployObject",
								"com.sos.inventory.model.common.IInventoryObject"],
								"required": ["workflowName",
								"agentName",
								"directory"],
								"propertyOrder": ["TYPE",
								"version",
								"workflowName",
								"agentName",
								"directory",
								"pattern",
								"timeZone",
								"delay",
								"title",
								"documentationName"],
								"description": "deploy object with fixed property 'TYPE':'FileWatch'",
								"properties": {
									"TYPE": {
										"javaType": "com.sos.inventory.model.deploy.DeployType",
										"type": "string",
										"enum": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"javaEnumNames": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"default": "Workflow"
									},
									"version": {
										"description": "inventory repository version",
										"type": "string",
										"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
										"default": "1.0.0",
										"maxLength": 10
									},
									"workflowName": {
										"alias": "workflowPath",
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255,
										"minLength": 1
									},
									"agentName": {
										"alias": "agentId,agentPath",
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255,
										"minLength": 1
									},
									"directory": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255,
										"minLength": 1
									},
									"pattern": {
										"type": "string"
									},
									"timeZone": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"delay": {
										"type": "integer",
										"format": "utc-millisec",
										"minimum": 1,
										"maximum": 9999
									},
									"title": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"documentationName": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"additionalProperties": false
							},
							"properties": {
								"path": {
									"description": "absolute path of an object.",
									"type": "string",
									"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
									"maxLength": 255,
									"minLength": 1
								},
								"versionDate": {
									"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
									"type": "string",
									"format": "date-time"
								},
								"state": {
									"javaType": "com.sos.controller.model.common.SyncState",
									"type": "object",
									"required": ["severity",
									"_text"],
									"properties": {
										"severity": {
											"type": "integer"
										},
										"_text": {
											"javaType": "com.sos.controller.model.common.SyncStateText",
											"type": "string",
											"enum": ["IN_SYNC",
											"NOT_IN_SYNC",
											"UNKNOWN"]
										}
									}
								}
							},
							"additionalProperties": false
						}
					},
					"forkListVariables": {
						"type": "array",
						"uniqueItems": true,
						"items": {
							"type": "string",
							"pattern": "^[^<>]*$",
							"maxLength": 255
						}
					},
					"hasExpectedNoticeBoards": {
						"type": "boolean"
					},
					"hasPostNoticeBoards": {
						"type": "boolean"
					},
					"hasAddOrderDependencies": {
						"type": "boolean"
					}
				},
				"additionalProperties": false
			},
			"properties": {
				"expectedNoticeBoards": {
					"javaType": "com.sos.controller.model.workflow.BoardWorkflows",
					"type": "object",
					"additionalProperties": {
						"type": "array",
						"items": {
							"javaType": "com.sos.controller.model.workflow.Workflow",
							"type": "object",
							"extends": {
								"javaType": "com.sos.inventory.model.workflow.Workflow",
								"type": "object",
								"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
								"com.sos.joc.model.common.IDeployObject",
								"com.sos.inventory.model.common.IInventoryObject"],
								"required": ["instructions",
								"jobs"],
								"propertyOrder": ["TYPE",
								"version",
								"versionId",
								"timeZone",
								"title",
								"documentationName",
								"orderPreparation",
								"jobResourceNames",
								"instructions",
								"jobs"],
								"description": "deploy object with fixed property 'TYPE':'Workflow'",
								"properties": {
									"TYPE": {
										"javaType": "com.sos.inventory.model.deploy.DeployType",
										"type": "string",
										"enum": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"javaEnumNames": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"default": "Workflow"
									},
									"version": {
										"description": "inventory repository version",
										"type": "string",
										"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
										"default": "1.0.0",
										"maxLength": 10
									},
									"versionId": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"timeZone": {
										"type": "string",
										"default": "Etc/UTC"
									},
									"title": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"documentationName": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"orderPreparation": {
										"javaType": "com.sos.inventory.model.workflow.Requirements",
										"type": "object",
										"alias": "orderRequirements",
										"properties": {
											"parameters": {
												"javaType": "com.sos.inventory.model.workflow.Parameters",
												"type": "object",
												"additionalProperties": {
													"javaType": "com.sos.inventory.model.workflow.Parameter",
													"type": "object",
													"required": ["type"],
													"description": "parameters only for parameter type 'List'",
													"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",
															"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"]
																	}
																},
																"additionalProperties": false
															}
														}
													},
													"additionalProperties": false
												}
											},
											"allowUndeclared": {
												"type": "boolean",
												"default": false
											}
										},
										"additionalProperties": false
									},
									"jobResourceNames": {
										"alias": "jobResourcePaths",
										"type": "array",
										"items": {
											"type": "string",
											"pattern": "^[^<>]*$",
											"maxLength": 255
										}
									},
									"instructions": {
										"type": "array",
										"minItems": 1,
										"items": {
											"javaType": "com.sos.inventory.model.instruction.Instruction",
											"type": "object",
											"required": ["TYPE"],
											"properties": {
												"TYPE": {
													"javaType": "com.sos.inventory.model.instruction.InstructionType",
													"type": "string",
													"enum": ["Execute.Named",
													"If",
													"Try",
													"Fork",
													"ForkList",
													"Finish",
													"Fail",
													"Retry",
													"Lock",
													"Prompt",
													"PostNotice",
													"ExpectNotice",
													"ImplicitEnd",
													"AddOrder"]
												},
												"position": {
													"description": "Actually, each even item is a string, each odd item is an integer",
													"type": "array",
													"items": {
														"anyOf": [{
															"type": "integer"
														},
														{
															"type": "string"
														}]
													}
												},
												"positionString": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"additionalProperties": false
										}
									},
									"jobs": {
										"javaType": "com.sos.inventory.model.workflow.Jobs",
										"type": "object",
										"additionalProperties": {
											"javaType": "com.sos.inventory.model.job.Job",
											"type": "object",
											"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject"],
											"required": ["agentName",
											"executable"],
											"description": "returnCodeMeaning is deprecated: moved to ShellScriptExecutable",
											"properties": {
												"agentName": {
													"alias": "agentId,agentPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"executable": {
													"javaType": "com.sos.inventory.model.job.Executable",
													"oneOf": [{
														"javaType": "com.sos.inventory.model.job.ExecutableScript",
														"type": "object",
														"extends": {
															"javaType": "com.sos.inventory.model.job.Executable",
															"type": "object",
															"required": ["TYPE"],
															"properties": {
																"TYPE": {
																	"javaType": "com.sos.inventory.model.job.ExecutableType",
																	"type": "string",
																	"enum": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"],
																	"javaEnumNames": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"]
																}
															},
															"additionalProperties": false
														},
														"required": ["script"],
														"propertyOrder": ["TYPE",
														"script",
														"env",
														"v1Compatible"],
														"description": "executable with fixed property 'TYPE':'ShellScriptExecutable'",
														"properties": {
															"script": {
																"type": "string",
																"minLength": 1
															},
															"env": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.job.Environment",
																"type": "object",
																"additionalProperties": {
																	"type": "string"
																}
															},
															"v1Compatible": {
																"type": "boolean",
																"default": false
															},
															"returnCodeMeaning": {
																"javaType": "com.sos.inventory.model.job.JobReturnCode",
																"type": "object",
																"oneOf": [{
																	"required": ["success"]
																},
																{
																	"required": ["failure"]
																}],
																"properties": {
																	"success": {
																		"type": "array",
																		"minItems": 1,
																		"items": {
																			"type": "integer"
																		}
																	},
																	"failure": {
																		"type": "array",
																		"minItems": 1,
																		"items": {
																			"type": "integer"
																		}
																	}
																},
																"additionalProperties": false
															},
															"login": {
																"type": "object",
																"javaType": "com.sos.inventory.model.job.ExecutableScriptLogin",
																"properties": {
																	"credentialKey": {
																		"type": "string"
																	},
																	"withUserProfile": {
																		"type": "boolean",
																		"default": false
																	}
																},
																"additionalProperties": false
															}
														},
														"additionalProperties": false
													},
													{
														"javaType": "com.sos.inventory.model.job.ExecutableJava",
														"type": "object",
														"extends": {
															"javaType": "com.sos.inventory.model.job.Executable",
															"type": "object",
															"required": ["TYPE"],
															"properties": {
																"TYPE": {
																	"javaType": "com.sos.inventory.model.job.ExecutableType",
																	"type": "string",
																	"enum": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"],
																	"javaEnumNames": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"]
																}
															},
															"additionalProperties": false
														},
														"required": ["className"],
														"propertyOrder": ["TYPE",
														"className"],
														"description": "executable with fixed property 'TYPE':'InternalExecutable'",
														"properties": {
															"className": {
																"type": "string",
																"minLength": 1
															},
															"jobArguments": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.common.Variables",
																"type": "object",
																"additionalProperties": true
															},
															"arguments": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.job.Environment",
																"type": "object",
																"additionalProperties": {
																	"type": "string"
																}
															}
														},
														"additionalProperties": false
													}]
												},
												"admissionTimeScheme": {
													"javaType": "com.sos.inventory.model.job.AdmissionTimeScheme",
													"type": "object",
													"required": ["periods"],
													"properties": {
														"periods": {
															"type": "array",
															"items": {
																"javaType": "com.sos.inventory.model.job.AdmissionTimePeriod",
																"type": "object",
																"properties": {
																	"TYPE": {
																		"description": "only yet 'WeekdayPeriod'",
																		"type": "string"
																	},
																	"secondOfWeek": {
																		"type": "integer",
																		"minimum": 0
																	},
																	"duration": {
																		"type": "integer",
																		"minimum": 0
																	}
																},
																"additionalProperties": false
															}
														}
													},
													"additionalProperties": false
												},
												"returnCodeMeaning": {
													"javaType": "com.sos.inventory.model.job.JobReturnCode",
													"type": "object",
													"oneOf": [{
														"required": ["success"]
													},
													{
														"required": ["failure"]
													}],
													"properties": {
														"success": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														},
														"failure": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														}
													},
													"additionalProperties": false
												},
												"parallelism": {
													"alias": "taskLimit",
													"type": "integer",
													"minimum": 1,
													"default": 1
												},
												"timeout": {
													"type": "integer",
													"minimum": 0
												},
												"graceTimeout": {
													"alias": "sigkillDelay",
													"description": "in seconds",
													"type": "integer",
													"minimum": 0,
													"default": 15
												},
												"failOnErrWritten": {
													"type": "boolean",
													"default": false
												},
												"jobClass": {
													"description": "absolute path of an object.",
													"type": "string",
													"pattern": "^(/|(/[^/\\<>?:\"|*]+)+)$",
													"maxLength": 255,
													"minLength": 1
												},
												"defaultArguments": {
													"description": "a map for arbitrary key-value pairs",
													"javaType": "com.sos.inventory.model.job.Environment",
													"type": "object",
													"additionalProperties": {
														"type": "string"
													}
												},
												"jobResourceNames": {
													"alias": "jobResourcePaths",
													"type": "array",
													"items": {
														"type": "string",
														"pattern": "^[^<>]*$",
														"maxLength": 255
													}
												},
												"title": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"documentationName": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"criticality": {
													"javaType": "com.sos.inventory.model.job.JobCriticality",
													"type": "string",
													"enum": ["NORMAL",
													"CRITICAL"]
												},
												"warnIfShorter": {
													"type": "integer",
													"minimum": 0
												},
												"warnIfLonger": {
													"type": "integer",
													"minimum": 0
												}
											},
											"additionalProperties": false
										}
									}
								},
								"additionalProperties": false
							},
							"properties": {
								"path": {
									"description": "absolute path of an object.",
									"type": "string",
									"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
									"maxLength": 255,
									"minLength": 1
								},
								"isCurrentVersion": {
									"type": "boolean",
									"default": true
								},
								"versionDate": {
									"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
									"type": "string",
									"format": "date-time"
								},
								"state": {
									"javaType": "com.sos.controller.model.common.SyncState",
									"type": "object",
									"required": ["severity",
									"_text"],
									"properties": {
										"severity": {
											"type": "integer"
										},
										"_text": {
											"javaType": "com.sos.controller.model.common.SyncStateText",
											"type": "string",
											"enum": ["IN_SYNC",
											"NOT_IN_SYNC",
											"UNKNOWN"]
										}
									}
								},
								"fileOrderSources": {
									"type": "array",
									"items": {
										"javaType": "com.sos.controller.model.fileordersource.FileOrderSource",
										"type": "object",
										"extends": {
											"javaType": "com.sos.inventory.model.fileordersource.FileOrderSource",
											"type": "object",
											"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
											"com.sos.joc.model.common.IDeployObject",
											"com.sos.inventory.model.common.IInventoryObject"],
											"required": ["workflowName",
											"agentName",
											"directory"],
											"propertyOrder": ["TYPE",
											"version",
											"workflowName",
											"agentName",
											"directory",
											"pattern",
											"timeZone",
											"delay",
											"title",
											"documentationName"],
											"description": "deploy object with fixed property 'TYPE':'FileWatch'",
											"properties": {
												"TYPE": {
													"javaType": "com.sos.inventory.model.deploy.DeployType",
													"type": "string",
													"enum": ["Workflow",
													"JobClass",
													"Lock",
													"FileWatch",
													"JobResource",
													"Board"],
													"javaEnumNames": ["Workflow",
													"JobClass",
													"Lock",
													"FileWatch",
													"JobResource",
													"Board"],
													"default": "Workflow"
												},
												"version": {
													"description": "inventory repository version",
													"type": "string",
													"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
													"default": "1.0.0",
													"maxLength": 10
												},
												"workflowName": {
													"alias": "workflowPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"agentName": {
													"alias": "agentId,agentPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"directory": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"pattern": {
													"type": "string"
												},
												"timeZone": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"delay": {
													"type": "integer",
													"format": "utc-millisec",
													"minimum": 1,
													"maximum": 9999
												},
												"title": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"documentationName": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"additionalProperties": false
										},
										"properties": {
											"path": {
												"description": "absolute path of an object.",
												"type": "string",
												"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
												"maxLength": 255,
												"minLength": 1
											},
											"versionDate": {
												"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
												"type": "string",
												"format": "date-time"
											},
											"state": {
												"javaType": "com.sos.controller.model.common.SyncState",
												"type": "object",
												"required": ["severity",
												"_text"],
												"properties": {
													"severity": {
														"type": "integer"
													},
													"_text": {
														"javaType": "com.sos.controller.model.common.SyncStateText",
														"type": "string",
														"enum": ["IN_SYNC",
														"NOT_IN_SYNC",
														"UNKNOWN"]
													}
												}
											}
										},
										"additionalProperties": false
									}
								},
								"forkListVariables": {
									"type": "array",
									"uniqueItems": true,
									"items": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"hasExpectedNoticeBoards": {
									"type": "boolean"
								},
								"hasPostNoticeBoards": {
									"type": "boolean"
								},
								"hasAddOrderDependencies": {
									"type": "boolean"
								}
							},
							"additionalProperties": false
						}
					}
				},
				"postNoticeBoards": {
					"javaType": "com.sos.controller.model.workflow.BoardWorkflows",
					"type": "object",
					"additionalProperties": {
						"type": "array",
						"items": {
							"javaType": "com.sos.controller.model.workflow.Workflow",
							"type": "object",
							"extends": {
								"javaType": "com.sos.inventory.model.workflow.Workflow",
								"type": "object",
								"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
								"com.sos.joc.model.common.IDeployObject",
								"com.sos.inventory.model.common.IInventoryObject"],
								"required": ["instructions",
								"jobs"],
								"propertyOrder": ["TYPE",
								"version",
								"versionId",
								"timeZone",
								"title",
								"documentationName",
								"orderPreparation",
								"jobResourceNames",
								"instructions",
								"jobs"],
								"description": "deploy object with fixed property 'TYPE':'Workflow'",
								"properties": {
									"TYPE": {
										"javaType": "com.sos.inventory.model.deploy.DeployType",
										"type": "string",
										"enum": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"javaEnumNames": ["Workflow",
										"JobClass",
										"Lock",
										"FileWatch",
										"JobResource",
										"Board"],
										"default": "Workflow"
									},
									"version": {
										"description": "inventory repository version",
										"type": "string",
										"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
										"default": "1.0.0",
										"maxLength": 10
									},
									"versionId": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"timeZone": {
										"type": "string",
										"default": "Etc/UTC"
									},
									"title": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"documentationName": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									},
									"orderPreparation": {
										"javaType": "com.sos.inventory.model.workflow.Requirements",
										"type": "object",
										"alias": "orderRequirements",
										"properties": {
											"parameters": {
												"javaType": "com.sos.inventory.model.workflow.Parameters",
												"type": "object",
												"additionalProperties": {
													"javaType": "com.sos.inventory.model.workflow.Parameter",
													"type": "object",
													"required": ["type"],
													"description": "parameters only for parameter type 'List'",
													"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",
															"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"]
																	}
																},
																"additionalProperties": false
															}
														}
													},
													"additionalProperties": false
												}
											},
											"allowUndeclared": {
												"type": "boolean",
												"default": false
											}
										},
										"additionalProperties": false
									},
									"jobResourceNames": {
										"alias": "jobResourcePaths",
										"type": "array",
										"items": {
											"type": "string",
											"pattern": "^[^<>]*$",
											"maxLength": 255
										}
									},
									"instructions": {
										"type": "array",
										"minItems": 1,
										"items": {
											"javaType": "com.sos.inventory.model.instruction.Instruction",
											"type": "object",
											"required": ["TYPE"],
											"properties": {
												"TYPE": {
													"javaType": "com.sos.inventory.model.instruction.InstructionType",
													"type": "string",
													"enum": ["Execute.Named",
													"If",
													"Try",
													"Fork",
													"ForkList",
													"Finish",
													"Fail",
													"Retry",
													"Lock",
													"Prompt",
													"PostNotice",
													"ExpectNotice",
													"ImplicitEnd",
													"AddOrder"]
												},
												"position": {
													"description": "Actually, each even item is a string, each odd item is an integer",
													"type": "array",
													"items": {
														"anyOf": [{
															"type": "integer"
														},
														{
															"type": "string"
														}]
													}
												},
												"positionString": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"additionalProperties": false
										}
									},
									"jobs": {
										"javaType": "com.sos.inventory.model.workflow.Jobs",
										"type": "object",
										"additionalProperties": {
											"javaType": "com.sos.inventory.model.job.Job",
											"type": "object",
											"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject"],
											"required": ["agentName",
											"executable"],
											"description": "returnCodeMeaning is deprecated: moved to ShellScriptExecutable",
											"properties": {
												"agentName": {
													"alias": "agentId,agentPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"executable": {
													"javaType": "com.sos.inventory.model.job.Executable",
													"oneOf": [{
														"javaType": "com.sos.inventory.model.job.ExecutableScript",
														"type": "object",
														"extends": {
															"javaType": "com.sos.inventory.model.job.Executable",
															"type": "object",
															"required": ["TYPE"],
															"properties": {
																"TYPE": {
																	"javaType": "com.sos.inventory.model.job.ExecutableType",
																	"type": "string",
																	"enum": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"],
																	"javaEnumNames": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"]
																}
															},
															"additionalProperties": false
														},
														"required": ["script"],
														"propertyOrder": ["TYPE",
														"script",
														"env",
														"v1Compatible"],
														"description": "executable with fixed property 'TYPE':'ShellScriptExecutable'",
														"properties": {
															"script": {
																"type": "string",
																"minLength": 1
															},
															"env": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.job.Environment",
																"type": "object",
																"additionalProperties": {
																	"type": "string"
																}
															},
															"v1Compatible": {
																"type": "boolean",
																"default": false
															},
															"returnCodeMeaning": {
																"javaType": "com.sos.inventory.model.job.JobReturnCode",
																"type": "object",
																"oneOf": [{
																	"required": ["success"]
																},
																{
																	"required": ["failure"]
																}],
																"properties": {
																	"success": {
																		"type": "array",
																		"minItems": 1,
																		"items": {
																			"type": "integer"
																		}
																	},
																	"failure": {
																		"type": "array",
																		"minItems": 1,
																		"items": {
																			"type": "integer"
																		}
																	}
																},
																"additionalProperties": false
															},
															"login": {
																"type": "object",
																"javaType": "com.sos.inventory.model.job.ExecutableScriptLogin",
																"properties": {
																	"credentialKey": {
																		"type": "string"
																	},
																	"withUserProfile": {
																		"type": "boolean",
																		"default": false
																	}
																},
																"additionalProperties": false
															}
														},
														"additionalProperties": false
													},
													{
														"javaType": "com.sos.inventory.model.job.ExecutableJava",
														"type": "object",
														"extends": {
															"javaType": "com.sos.inventory.model.job.Executable",
															"type": "object",
															"required": ["TYPE"],
															"properties": {
																"TYPE": {
																	"javaType": "com.sos.inventory.model.job.ExecutableType",
																	"type": "string",
																	"enum": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"],
																	"javaEnumNames": ["ShellScriptExecutable",
																	"ScriptExecutable",
																	"InternalExecutable"]
																}
															},
															"additionalProperties": false
														},
														"required": ["className"],
														"propertyOrder": ["TYPE",
														"className"],
														"description": "executable with fixed property 'TYPE':'InternalExecutable'",
														"properties": {
															"className": {
																"type": "string",
																"minLength": 1
															},
															"jobArguments": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.common.Variables",
																"type": "object",
																"additionalProperties": true
															},
															"arguments": {
																"description": "a map for arbitrary key-value pairs",
																"javaType": "com.sos.inventory.model.job.Environment",
																"type": "object",
																"additionalProperties": {
																	"type": "string"
																}
															}
														},
														"additionalProperties": false
													}]
												},
												"admissionTimeScheme": {
													"javaType": "com.sos.inventory.model.job.AdmissionTimeScheme",
													"type": "object",
													"required": ["periods"],
													"properties": {
														"periods": {
															"type": "array",
															"items": {
																"javaType": "com.sos.inventory.model.job.AdmissionTimePeriod",
																"type": "object",
																"properties": {
																	"TYPE": {
																		"description": "only yet 'WeekdayPeriod'",
																		"type": "string"
																	},
																	"secondOfWeek": {
																		"type": "integer",
																		"minimum": 0
																	},
																	"duration": {
																		"type": "integer",
																		"minimum": 0
																	}
																},
																"additionalProperties": false
															}
														}
													},
													"additionalProperties": false
												},
												"returnCodeMeaning": {
													"javaType": "com.sos.inventory.model.job.JobReturnCode",
													"type": "object",
													"oneOf": [{
														"required": ["success"]
													},
													{
														"required": ["failure"]
													}],
													"properties": {
														"success": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														},
														"failure": {
															"type": "array",
															"minItems": 1,
															"items": {
																"type": "integer"
															}
														}
													},
													"additionalProperties": false
												},
												"parallelism": {
													"alias": "taskLimit",
													"type": "integer",
													"minimum": 1,
													"default": 1
												},
												"timeout": {
													"type": "integer",
													"minimum": 0
												},
												"graceTimeout": {
													"alias": "sigkillDelay",
													"description": "in seconds",
													"type": "integer",
													"minimum": 0,
													"default": 15
												},
												"failOnErrWritten": {
													"type": "boolean",
													"default": false
												},
												"jobClass": {
													"description": "absolute path of an object.",
													"type": "string",
													"pattern": "^(/|(/[^/\\<>?:\"|*]+)+)$",
													"maxLength": 255,
													"minLength": 1
												},
												"defaultArguments": {
													"description": "a map for arbitrary key-value pairs",
													"javaType": "com.sos.inventory.model.job.Environment",
													"type": "object",
													"additionalProperties": {
														"type": "string"
													}
												},
												"jobResourceNames": {
													"alias": "jobResourcePaths",
													"type": "array",
													"items": {
														"type": "string",
														"pattern": "^[^<>]*$",
														"maxLength": 255
													}
												},
												"title": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"documentationName": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"criticality": {
													"javaType": "com.sos.inventory.model.job.JobCriticality",
													"type": "string",
													"enum": ["NORMAL",
													"CRITICAL"]
												},
												"warnIfShorter": {
													"type": "integer",
													"minimum": 0
												},
												"warnIfLonger": {
													"type": "integer",
													"minimum": 0
												}
											},
											"additionalProperties": false
										}
									}
								},
								"additionalProperties": false
							},
							"properties": {
								"path": {
									"description": "absolute path of an object.",
									"type": "string",
									"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
									"maxLength": 255,
									"minLength": 1
								},
								"isCurrentVersion": {
									"type": "boolean",
									"default": true
								},
								"versionDate": {
									"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
									"type": "string",
									"format": "date-time"
								},
								"state": {
									"javaType": "com.sos.controller.model.common.SyncState",
									"type": "object",
									"required": ["severity",
									"_text"],
									"properties": {
										"severity": {
											"type": "integer"
										},
										"_text": {
											"javaType": "com.sos.controller.model.common.SyncStateText",
											"type": "string",
											"enum": ["IN_SYNC",
											"NOT_IN_SYNC",
											"UNKNOWN"]
										}
									}
								},
								"fileOrderSources": {
									"type": "array",
									"items": {
										"javaType": "com.sos.controller.model.fileordersource.FileOrderSource",
										"type": "object",
										"extends": {
											"javaType": "com.sos.inventory.model.fileordersource.FileOrderSource",
											"type": "object",
											"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
											"com.sos.joc.model.common.IDeployObject",
											"com.sos.inventory.model.common.IInventoryObject"],
											"required": ["workflowName",
											"agentName",
											"directory"],
											"propertyOrder": ["TYPE",
											"version",
											"workflowName",
											"agentName",
											"directory",
											"pattern",
											"timeZone",
											"delay",
											"title",
											"documentationName"],
											"description": "deploy object with fixed property 'TYPE':'FileWatch'",
											"properties": {
												"TYPE": {
													"javaType": "com.sos.inventory.model.deploy.DeployType",
													"type": "string",
													"enum": ["Workflow",
													"JobClass",
													"Lock",
													"FileWatch",
													"JobResource",
													"Board"],
													"javaEnumNames": ["Workflow",
													"JobClass",
													"Lock",
													"FileWatch",
													"JobResource",
													"Board"],
													"default": "Workflow"
												},
												"version": {
													"description": "inventory repository version",
													"type": "string",
													"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
													"default": "1.0.0",
													"maxLength": 10
												},
												"workflowName": {
													"alias": "workflowPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"agentName": {
													"alias": "agentId,agentPath",
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"directory": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255,
													"minLength": 1
												},
												"pattern": {
													"type": "string"
												},
												"timeZone": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"delay": {
													"type": "integer",
													"format": "utc-millisec",
													"minimum": 1,
													"maximum": 9999
												},
												"title": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												},
												"documentationName": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"additionalProperties": false
										},
										"properties": {
											"path": {
												"description": "absolute path of an object.",
												"type": "string",
												"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
												"maxLength": 255,
												"minLength": 1
											},
											"versionDate": {
												"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
												"type": "string",
												"format": "date-time"
											},
											"state": {
												"javaType": "com.sos.controller.model.common.SyncState",
												"type": "object",
												"required": ["severity",
												"_text"],
												"properties": {
													"severity": {
														"type": "integer"
													},
													"_text": {
														"javaType": "com.sos.controller.model.common.SyncStateText",
														"type": "string",
														"enum": ["IN_SYNC",
														"NOT_IN_SYNC",
														"UNKNOWN"]
													}
												}
											}
										},
										"additionalProperties": false
									}
								},
								"forkListVariables": {
									"type": "array",
									"uniqueItems": true,
									"items": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"hasExpectedNoticeBoards": {
									"type": "boolean"
								},
								"hasPostNoticeBoards": {
									"type": "boolean"
								},
								"hasAddOrderDependencies": {
									"type": "boolean"
								}
							},
							"additionalProperties": false
						}
					}
				},
				"addOrderToWorkflows": {
					"type": "array",
					"items": {
						"javaType": "com.sos.controller.model.workflow.Workflow",
						"type": "object",
						"extends": {
							"javaType": "com.sos.inventory.model.workflow.Workflow",
							"type": "object",
							"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
							"com.sos.joc.model.common.IDeployObject",
							"com.sos.inventory.model.common.IInventoryObject"],
							"required": ["instructions",
							"jobs"],
							"propertyOrder": ["TYPE",
							"version",
							"versionId",
							"timeZone",
							"title",
							"documentationName",
							"orderPreparation",
							"jobResourceNames",
							"instructions",
							"jobs"],
							"description": "deploy object with fixed property 'TYPE':'Workflow'",
							"properties": {
								"TYPE": {
									"javaType": "com.sos.inventory.model.deploy.DeployType",
									"type": "string",
									"enum": ["Workflow",
									"JobClass",
									"Lock",
									"FileWatch",
									"JobResource",
									"Board"],
									"javaEnumNames": ["Workflow",
									"JobClass",
									"Lock",
									"FileWatch",
									"JobResource",
									"Board"],
									"default": "Workflow"
								},
								"version": {
									"description": "inventory repository version",
									"type": "string",
									"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
									"default": "1.0.0",
									"maxLength": 10
								},
								"versionId": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"timeZone": {
									"type": "string",
									"default": "Etc/UTC"
								},
								"title": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"documentationName": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"orderPreparation": {
									"javaType": "com.sos.inventory.model.workflow.Requirements",
									"type": "object",
									"alias": "orderRequirements",
									"properties": {
										"parameters": {
											"javaType": "com.sos.inventory.model.workflow.Parameters",
											"type": "object",
											"additionalProperties": {
												"javaType": "com.sos.inventory.model.workflow.Parameter",
												"type": "object",
												"required": ["type"],
												"description": "parameters only for parameter type 'List'",
												"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",
														"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"]
																}
															},
															"additionalProperties": false
														}
													}
												},
												"additionalProperties": false
											}
										},
										"allowUndeclared": {
											"type": "boolean",
											"default": false
										}
									},
									"additionalProperties": false
								},
								"jobResourceNames": {
									"alias": "jobResourcePaths",
									"type": "array",
									"items": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"instructions": {
									"type": "array",
									"minItems": 1,
									"items": {
										"javaType": "com.sos.inventory.model.instruction.Instruction",
										"type": "object",
										"required": ["TYPE"],
										"properties": {
											"TYPE": {
												"javaType": "com.sos.inventory.model.instruction.InstructionType",
												"type": "string",
												"enum": ["Execute.Named",
												"If",
												"Try",
												"Fork",
												"ForkList",
												"Finish",
												"Fail",
												"Retry",
												"Lock",
												"Prompt",
												"PostNotice",
												"ExpectNotice",
												"ImplicitEnd",
												"AddOrder"]
											},
											"position": {
												"description": "Actually, each even item is a string, each odd item is an integer",
												"type": "array",
												"items": {
													"anyOf": [{
														"type": "integer"
													},
													{
														"type": "string"
													}]
												}
											},
											"positionString": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											}
										},
										"additionalProperties": false
									}
								},
								"jobs": {
									"javaType": "com.sos.inventory.model.workflow.Jobs",
									"type": "object",
									"additionalProperties": {
										"javaType": "com.sos.inventory.model.job.Job",
										"type": "object",
										"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject"],
										"required": ["agentName",
										"executable"],
										"description": "returnCodeMeaning is deprecated: moved to ShellScriptExecutable",
										"properties": {
											"agentName": {
												"alias": "agentId,agentPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"executable": {
												"javaType": "com.sos.inventory.model.job.Executable",
												"oneOf": [{
													"javaType": "com.sos.inventory.model.job.ExecutableScript",
													"type": "object",
													"extends": {
														"javaType": "com.sos.inventory.model.job.Executable",
														"type": "object",
														"required": ["TYPE"],
														"properties": {
															"TYPE": {
																"javaType": "com.sos.inventory.model.job.ExecutableType",
																"type": "string",
																"enum": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"],
																"javaEnumNames": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"]
															}
														},
														"additionalProperties": false
													},
													"required": ["script"],
													"propertyOrder": ["TYPE",
													"script",
													"env",
													"v1Compatible"],
													"description": "executable with fixed property 'TYPE':'ShellScriptExecutable'",
													"properties": {
														"script": {
															"type": "string",
															"minLength": 1
														},
														"env": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.job.Environment",
															"type": "object",
															"additionalProperties": {
																"type": "string"
															}
														},
														"v1Compatible": {
															"type": "boolean",
															"default": false
														},
														"returnCodeMeaning": {
															"javaType": "com.sos.inventory.model.job.JobReturnCode",
															"type": "object",
															"oneOf": [{
																"required": ["success"]
															},
															{
																"required": ["failure"]
															}],
															"properties": {
																"success": {
																	"type": "array",
																	"minItems": 1,
																	"items": {
																		"type": "integer"
																	}
																},
																"failure": {
																	"type": "array",
																	"minItems": 1,
																	"items": {
																		"type": "integer"
																	}
																}
															},
															"additionalProperties": false
														},
														"login": {
															"type": "object",
															"javaType": "com.sos.inventory.model.job.ExecutableScriptLogin",
															"properties": {
																"credentialKey": {
																	"type": "string"
																},
																"withUserProfile": {
																	"type": "boolean",
																	"default": false
																}
															},
															"additionalProperties": false
														}
													},
													"additionalProperties": false
												},
												{
													"javaType": "com.sos.inventory.model.job.ExecutableJava",
													"type": "object",
													"extends": {
														"javaType": "com.sos.inventory.model.job.Executable",
														"type": "object",
														"required": ["TYPE"],
														"properties": {
															"TYPE": {
																"javaType": "com.sos.inventory.model.job.ExecutableType",
																"type": "string",
																"enum": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"],
																"javaEnumNames": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"]
															}
														},
														"additionalProperties": false
													},
													"required": ["className"],
													"propertyOrder": ["TYPE",
													"className"],
													"description": "executable with fixed property 'TYPE':'InternalExecutable'",
													"properties": {
														"className": {
															"type": "string",
															"minLength": 1
														},
														"jobArguments": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.common.Variables",
															"type": "object",
															"additionalProperties": true
														},
														"arguments": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.job.Environment",
															"type": "object",
															"additionalProperties": {
																"type": "string"
															}
														}
													},
													"additionalProperties": false
												}]
											},
											"admissionTimeScheme": {
												"javaType": "com.sos.inventory.model.job.AdmissionTimeScheme",
												"type": "object",
												"required": ["periods"],
												"properties": {
													"periods": {
														"type": "array",
														"items": {
															"javaType": "com.sos.inventory.model.job.AdmissionTimePeriod",
															"type": "object",
															"properties": {
																"TYPE": {
																	"description": "only yet 'WeekdayPeriod'",
																	"type": "string"
																},
																"secondOfWeek": {
																	"type": "integer",
																	"minimum": 0
																},
																"duration": {
																	"type": "integer",
																	"minimum": 0
																}
															},
															"additionalProperties": false
														}
													}
												},
												"additionalProperties": false
											},
											"returnCodeMeaning": {
												"javaType": "com.sos.inventory.model.job.JobReturnCode",
												"type": "object",
												"oneOf": [{
													"required": ["success"]
												},
												{
													"required": ["failure"]
												}],
												"properties": {
													"success": {
														"type": "array",
														"minItems": 1,
														"items": {
															"type": "integer"
														}
													},
													"failure": {
														"type": "array",
														"minItems": 1,
														"items": {
															"type": "integer"
														}
													}
												},
												"additionalProperties": false
											},
											"parallelism": {
												"alias": "taskLimit",
												"type": "integer",
												"minimum": 1,
												"default": 1
											},
											"timeout": {
												"type": "integer",
												"minimum": 0
											},
											"graceTimeout": {
												"alias": "sigkillDelay",
												"description": "in seconds",
												"type": "integer",
												"minimum": 0,
												"default": 15
											},
											"failOnErrWritten": {
												"type": "boolean",
												"default": false
											},
											"jobClass": {
												"description": "absolute path of an object.",
												"type": "string",
												"pattern": "^(/|(/[^/\\<>?:\"|*]+)+)$",
												"maxLength": 255,
												"minLength": 1
											},
											"defaultArguments": {
												"description": "a map for arbitrary key-value pairs",
												"javaType": "com.sos.inventory.model.job.Environment",
												"type": "object",
												"additionalProperties": {
													"type": "string"
												}
											},
											"jobResourceNames": {
												"alias": "jobResourcePaths",
												"type": "array",
												"items": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"title": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"documentationName": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"criticality": {
												"javaType": "com.sos.inventory.model.job.JobCriticality",
												"type": "string",
												"enum": ["NORMAL",
												"CRITICAL"]
											},
											"warnIfShorter": {
												"type": "integer",
												"minimum": 0
											},
											"warnIfLonger": {
												"type": "integer",
												"minimum": 0
											}
										},
										"additionalProperties": false
									}
								}
							},
							"additionalProperties": false
						},
						"properties": {
							"path": {
								"description": "absolute path of an object.",
								"type": "string",
								"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
								"maxLength": 255,
								"minLength": 1
							},
							"isCurrentVersion": {
								"type": "boolean",
								"default": true
							},
							"versionDate": {
								"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
								"type": "string",
								"format": "date-time"
							},
							"state": {
								"javaType": "com.sos.controller.model.common.SyncState",
								"type": "object",
								"required": ["severity",
								"_text"],
								"properties": {
									"severity": {
										"type": "integer"
									},
									"_text": {
										"javaType": "com.sos.controller.model.common.SyncStateText",
										"type": "string",
										"enum": ["IN_SYNC",
										"NOT_IN_SYNC",
										"UNKNOWN"]
									}
								}
							},
							"fileOrderSources": {
								"type": "array",
								"items": {
									"javaType": "com.sos.controller.model.fileordersource.FileOrderSource",
									"type": "object",
									"extends": {
										"javaType": "com.sos.inventory.model.fileordersource.FileOrderSource",
										"type": "object",
										"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
										"com.sos.joc.model.common.IDeployObject",
										"com.sos.inventory.model.common.IInventoryObject"],
										"required": ["workflowName",
										"agentName",
										"directory"],
										"propertyOrder": ["TYPE",
										"version",
										"workflowName",
										"agentName",
										"directory",
										"pattern",
										"timeZone",
										"delay",
										"title",
										"documentationName"],
										"description": "deploy object with fixed property 'TYPE':'FileWatch'",
										"properties": {
											"TYPE": {
												"javaType": "com.sos.inventory.model.deploy.DeployType",
												"type": "string",
												"enum": ["Workflow",
												"JobClass",
												"Lock",
												"FileWatch",
												"JobResource",
												"Board"],
												"javaEnumNames": ["Workflow",
												"JobClass",
												"Lock",
												"FileWatch",
												"JobResource",
												"Board"],
												"default": "Workflow"
											},
											"version": {
												"description": "inventory repository version",
												"type": "string",
												"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
												"default": "1.0.0",
												"maxLength": 10
											},
											"workflowName": {
												"alias": "workflowPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"agentName": {
												"alias": "agentId,agentPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"directory": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"pattern": {
												"type": "string"
											},
											"timeZone": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"delay": {
												"type": "integer",
												"format": "utc-millisec",
												"minimum": 1,
												"maximum": 9999
											},
											"title": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"documentationName": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											}
										},
										"additionalProperties": false
									},
									"properties": {
										"path": {
											"description": "absolute path of an object.",
											"type": "string",
											"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
											"maxLength": 255,
											"minLength": 1
										},
										"versionDate": {
											"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
											"type": "string",
											"format": "date-time"
										},
										"state": {
											"javaType": "com.sos.controller.model.common.SyncState",
											"type": "object",
											"required": ["severity",
											"_text"],
											"properties": {
												"severity": {
													"type": "integer"
												},
												"_text": {
													"javaType": "com.sos.controller.model.common.SyncStateText",
													"type": "string",
													"enum": ["IN_SYNC",
													"NOT_IN_SYNC",
													"UNKNOWN"]
												}
											}
										}
									},
									"additionalProperties": false
								}
							},
							"forkListVariables": {
								"type": "array",
								"uniqueItems": true,
								"items": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								}
							},
							"hasExpectedNoticeBoards": {
								"type": "boolean"
							},
							"hasPostNoticeBoards": {
								"type": "boolean"
							},
							"hasAddOrderDependencies": {
								"type": "boolean"
							}
						},
						"additionalProperties": false
					}
				},
				"addOrderFromWorkflows": {
					"type": "array",
					"items": {
						"javaType": "com.sos.controller.model.workflow.Workflow",
						"type": "object",
						"extends": {
							"javaType": "com.sos.inventory.model.workflow.Workflow",
							"type": "object",
							"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
							"com.sos.joc.model.common.IDeployObject",
							"com.sos.inventory.model.common.IInventoryObject"],
							"required": ["instructions",
							"jobs"],
							"propertyOrder": ["TYPE",
							"version",
							"versionId",
							"timeZone",
							"title",
							"documentationName",
							"orderPreparation",
							"jobResourceNames",
							"instructions",
							"jobs"],
							"description": "deploy object with fixed property 'TYPE':'Workflow'",
							"properties": {
								"TYPE": {
									"javaType": "com.sos.inventory.model.deploy.DeployType",
									"type": "string",
									"enum": ["Workflow",
									"JobClass",
									"Lock",
									"FileWatch",
									"JobResource",
									"Board"],
									"javaEnumNames": ["Workflow",
									"JobClass",
									"Lock",
									"FileWatch",
									"JobResource",
									"Board"],
									"default": "Workflow"
								},
								"version": {
									"description": "inventory repository version",
									"type": "string",
									"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
									"default": "1.0.0",
									"maxLength": 10
								},
								"versionId": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"timeZone": {
									"type": "string",
									"default": "Etc/UTC"
								},
								"title": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"documentationName": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								},
								"orderPreparation": {
									"javaType": "com.sos.inventory.model.workflow.Requirements",
									"type": "object",
									"alias": "orderRequirements",
									"properties": {
										"parameters": {
											"javaType": "com.sos.inventory.model.workflow.Parameters",
											"type": "object",
											"additionalProperties": {
												"javaType": "com.sos.inventory.model.workflow.Parameter",
												"type": "object",
												"required": ["type"],
												"description": "parameters only for parameter type 'List'",
												"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",
														"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"]
																}
															},
															"additionalProperties": false
														}
													}
												},
												"additionalProperties": false
											}
										},
										"allowUndeclared": {
											"type": "boolean",
											"default": false
										}
									},
									"additionalProperties": false
								},
								"jobResourceNames": {
									"alias": "jobResourcePaths",
									"type": "array",
									"items": {
										"type": "string",
										"pattern": "^[^<>]*$",
										"maxLength": 255
									}
								},
								"instructions": {
									"type": "array",
									"minItems": 1,
									"items": {
										"javaType": "com.sos.inventory.model.instruction.Instruction",
										"type": "object",
										"required": ["TYPE"],
										"properties": {
											"TYPE": {
												"javaType": "com.sos.inventory.model.instruction.InstructionType",
												"type": "string",
												"enum": ["Execute.Named",
												"If",
												"Try",
												"Fork",
												"ForkList",
												"Finish",
												"Fail",
												"Retry",
												"Lock",
												"Prompt",
												"PostNotice",
												"ExpectNotice",
												"ImplicitEnd",
												"AddOrder"]
											},
											"position": {
												"description": "Actually, each even item is a string, each odd item is an integer",
												"type": "array",
												"items": {
													"anyOf": [{
														"type": "integer"
													},
													{
														"type": "string"
													}]
												}
											},
											"positionString": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											}
										},
										"additionalProperties": false
									}
								},
								"jobs": {
									"javaType": "com.sos.inventory.model.workflow.Jobs",
									"type": "object",
									"additionalProperties": {
										"javaType": "com.sos.inventory.model.job.Job",
										"type": "object",
										"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject"],
										"required": ["agentName",
										"executable"],
										"description": "returnCodeMeaning is deprecated: moved to ShellScriptExecutable",
										"properties": {
											"agentName": {
												"alias": "agentId,agentPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"executable": {
												"javaType": "com.sos.inventory.model.job.Executable",
												"oneOf": [{
													"javaType": "com.sos.inventory.model.job.ExecutableScript",
													"type": "object",
													"extends": {
														"javaType": "com.sos.inventory.model.job.Executable",
														"type": "object",
														"required": ["TYPE"],
														"properties": {
															"TYPE": {
																"javaType": "com.sos.inventory.model.job.ExecutableType",
																"type": "string",
																"enum": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"],
																"javaEnumNames": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"]
															}
														},
														"additionalProperties": false
													},
													"required": ["script"],
													"propertyOrder": ["TYPE",
													"script",
													"env",
													"v1Compatible"],
													"description": "executable with fixed property 'TYPE':'ShellScriptExecutable'",
													"properties": {
														"script": {
															"type": "string",
															"minLength": 1
														},
														"env": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.job.Environment",
															"type": "object",
															"additionalProperties": {
																"type": "string"
															}
														},
														"v1Compatible": {
															"type": "boolean",
															"default": false
														},
														"returnCodeMeaning": {
															"javaType": "com.sos.inventory.model.job.JobReturnCode",
															"type": "object",
															"oneOf": [{
																"required": ["success"]
															},
															{
																"required": ["failure"]
															}],
															"properties": {
																"success": {
																	"type": "array",
																	"minItems": 1,
																	"items": {
																		"type": "integer"
																	}
																},
																"failure": {
																	"type": "array",
																	"minItems": 1,
																	"items": {
																		"type": "integer"
																	}
																}
															},
															"additionalProperties": false
														},
														"login": {
															"type": "object",
															"javaType": "com.sos.inventory.model.job.ExecutableScriptLogin",
															"properties": {
																"credentialKey": {
																	"type": "string"
																},
																"withUserProfile": {
																	"type": "boolean",
																	"default": false
																}
															},
															"additionalProperties": false
														}
													},
													"additionalProperties": false
												},
												{
													"javaType": "com.sos.inventory.model.job.ExecutableJava",
													"type": "object",
													"extends": {
														"javaType": "com.sos.inventory.model.job.Executable",
														"type": "object",
														"required": ["TYPE"],
														"properties": {
															"TYPE": {
																"javaType": "com.sos.inventory.model.job.ExecutableType",
																"type": "string",
																"enum": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"],
																"javaEnumNames": ["ShellScriptExecutable",
																"ScriptExecutable",
																"InternalExecutable"]
															}
														},
														"additionalProperties": false
													},
													"required": ["className"],
													"propertyOrder": ["TYPE",
													"className"],
													"description": "executable with fixed property 'TYPE':'InternalExecutable'",
													"properties": {
														"className": {
															"type": "string",
															"minLength": 1
														},
														"jobArguments": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.common.Variables",
															"type": "object",
															"additionalProperties": true
														},
														"arguments": {
															"description": "a map for arbitrary key-value pairs",
															"javaType": "com.sos.inventory.model.job.Environment",
															"type": "object",
															"additionalProperties": {
																"type": "string"
															}
														}
													},
													"additionalProperties": false
												}]
											},
											"admissionTimeScheme": {
												"javaType": "com.sos.inventory.model.job.AdmissionTimeScheme",
												"type": "object",
												"required": ["periods"],
												"properties": {
													"periods": {
														"type": "array",
														"items": {
															"javaType": "com.sos.inventory.model.job.AdmissionTimePeriod",
															"type": "object",
															"properties": {
																"TYPE": {
																	"description": "only yet 'WeekdayPeriod'",
																	"type": "string"
																},
																"secondOfWeek": {
																	"type": "integer",
																	"minimum": 0
																},
																"duration": {
																	"type": "integer",
																	"minimum": 0
																}
															},
															"additionalProperties": false
														}
													}
												},
												"additionalProperties": false
											},
											"returnCodeMeaning": {
												"javaType": "com.sos.inventory.model.job.JobReturnCode",
												"type": "object",
												"oneOf": [{
													"required": ["success"]
												},
												{
													"required": ["failure"]
												}],
												"properties": {
													"success": {
														"type": "array",
														"minItems": 1,
														"items": {
															"type": "integer"
														}
													},
													"failure": {
														"type": "array",
														"minItems": 1,
														"items": {
															"type": "integer"
														}
													}
												},
												"additionalProperties": false
											},
											"parallelism": {
												"alias": "taskLimit",
												"type": "integer",
												"minimum": 1,
												"default": 1
											},
											"timeout": {
												"type": "integer",
												"minimum": 0
											},
											"graceTimeout": {
												"alias": "sigkillDelay",
												"description": "in seconds",
												"type": "integer",
												"minimum": 0,
												"default": 15
											},
											"failOnErrWritten": {
												"type": "boolean",
												"default": false
											},
											"jobClass": {
												"description": "absolute path of an object.",
												"type": "string",
												"pattern": "^(/|(/[^/\\<>?:\"|*]+)+)$",
												"maxLength": 255,
												"minLength": 1
											},
											"defaultArguments": {
												"description": "a map for arbitrary key-value pairs",
												"javaType": "com.sos.inventory.model.job.Environment",
												"type": "object",
												"additionalProperties": {
													"type": "string"
												}
											},
											"jobResourceNames": {
												"alias": "jobResourcePaths",
												"type": "array",
												"items": {
													"type": "string",
													"pattern": "^[^<>]*$",
													"maxLength": 255
												}
											},
											"title": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"documentationName": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"criticality": {
												"javaType": "com.sos.inventory.model.job.JobCriticality",
												"type": "string",
												"enum": ["NORMAL",
												"CRITICAL"]
											},
											"warnIfShorter": {
												"type": "integer",
												"minimum": 0
											},
											"warnIfLonger": {
												"type": "integer",
												"minimum": 0
											}
										},
										"additionalProperties": false
									}
								}
							},
							"additionalProperties": false
						},
						"properties": {
							"path": {
								"description": "absolute path of an object.",
								"type": "string",
								"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
								"maxLength": 255,
								"minLength": 1
							},
							"isCurrentVersion": {
								"type": "boolean",
								"default": true
							},
							"versionDate": {
								"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
								"type": "string",
								"format": "date-time"
							},
							"state": {
								"javaType": "com.sos.controller.model.common.SyncState",
								"type": "object",
								"required": ["severity",
								"_text"],
								"properties": {
									"severity": {
										"type": "integer"
									},
									"_text": {
										"javaType": "com.sos.controller.model.common.SyncStateText",
										"type": "string",
										"enum": ["IN_SYNC",
										"NOT_IN_SYNC",
										"UNKNOWN"]
									}
								}
							},
							"fileOrderSources": {
								"type": "array",
								"items": {
									"javaType": "com.sos.controller.model.fileordersource.FileOrderSource",
									"type": "object",
									"extends": {
										"javaType": "com.sos.inventory.model.fileordersource.FileOrderSource",
										"type": "object",
										"javaInterfaces": ["com.sos.joc.model.common.IConfigurationObject",
										"com.sos.joc.model.common.IDeployObject",
										"com.sos.inventory.model.common.IInventoryObject"],
										"required": ["workflowName",
										"agentName",
										"directory"],
										"propertyOrder": ["TYPE",
										"version",
										"workflowName",
										"agentName",
										"directory",
										"pattern",
										"timeZone",
										"delay",
										"title",
										"documentationName"],
										"description": "deploy object with fixed property 'TYPE':'FileWatch'",
										"properties": {
											"TYPE": {
												"javaType": "com.sos.inventory.model.deploy.DeployType",
												"type": "string",
												"enum": ["Workflow",
												"JobClass",
												"Lock",
												"FileWatch",
												"JobResource",
												"Board"],
												"javaEnumNames": ["Workflow",
												"JobClass",
												"Lock",
												"FileWatch",
												"JobResource",
												"Board"],
												"default": "Workflow"
											},
											"version": {
												"description": "inventory repository version",
												"type": "string",
												"pattern": "[0-9]+\\.[0-9]+\\.[0-9]+",
												"default": "1.0.0",
												"maxLength": 10
											},
											"workflowName": {
												"alias": "workflowPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"agentName": {
												"alias": "agentId,agentPath",
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"directory": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255,
												"minLength": 1
											},
											"pattern": {
												"type": "string"
											},
											"timeZone": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"delay": {
												"type": "integer",
												"format": "utc-millisec",
												"minimum": 1,
												"maximum": 9999
											},
											"title": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											},
											"documentationName": {
												"type": "string",
												"pattern": "^[^<>]*$",
												"maxLength": 255
											}
										},
										"additionalProperties": false
									},
									"properties": {
										"path": {
											"description": "absolute path of an object.",
											"type": "string",
											"pattern": "^(/|(/[^/\\\\<>?:\"|*]+)+)$",
											"maxLength": 255,
											"minLength": 1
										},
										"versionDate": {
											"description": "Value is UTC timestamp in ISO 8601 YYYY-MM-DDThh:mm:ss.sZ or empty",
											"type": "string",
											"format": "date-time"
										},
										"state": {
											"javaType": "com.sos.controller.model.common.SyncState",
											"type": "object",
											"required": ["severity",
											"_text"],
											"properties": {
												"severity": {
													"type": "integer"
												},
												"_text": {
													"javaType": "com.sos.controller.model.common.SyncStateText",
													"type": "string",
													"enum": ["IN_SYNC",
													"NOT_IN_SYNC",
													"UNKNOWN"]
												}
											}
										}
									},
									"additionalProperties": false
								}
							},
							"forkListVariables": {
								"type": "array",
								"uniqueItems": true,
								"items": {
									"type": "string",
									"pattern": "^[^<>]*$",
									"maxLength": 255
								}
							},
							"hasExpectedNoticeBoards": {
								"type": "boolean"
							},
							"hasPostNoticeBoards": {
								"type": "boolean"
							},
							"hasAddOrderDependencies": {
								"type": "boolean"
							}
						},
						"additionalProperties": false
					}
				}
			}
		}
	},
	"additionalProperties": false
}