{
	"type": "array",
	"items": {
		"description": "This type represents a threshold.\n",
		"type": "object",
		"required": [
			"id",
			"objectInstanceId",
			"criteria",
			"_links"
		],
		"properties": {
			"id": {
				"description": "An identifier with the intention of being globally unique.\n",
				"type": "string"
			},
			"objectInstanceId": {
				"description": "An identifier with the intention of being globally unique.\n",
				"type": "string"
			},
			"criteria": {
				"description": "This type represents criteria that define a threshold.\n",
				"type": "object",
				"required": [
					"performanceMetric",
					"thresholdType"
				],
				"properties": {
					"performanceMetric": {
						"description": "Defines the performance metric associated with the threshold, as specified in ETSI GS NFV-IFA 027).\n",
						"type": "string"
					},
					"thresholdType": {
						"description": "Type of threshold. This attribute determines which other attributes are present in the data structure. Permitted values: * SIMPLE: Single-valued static threshold In the present document, simple thresholds are defined. The definition of additional threshold types is left for future specification.\n",
						"type": "string",
						"enum": [
							"SIMPLE"
						]
					},
					"simpleThresholdDetails": {
						"description": "Details of a simple threshold. Shall be present if thresholdType=\"SIMPLE\".\n",
						"type": "object",
						"required": [
							"thresholdValue",
							"hysteresis"
						],
						"properties": {
							"thresholdValue": {
								"description": "The threshold value. Shall be represented as a floating point number.               \n",
								"type": "integer"
							},
							"hysteresis": {
								"description": "The hysteresis of the threshold. Shall be represented as a non-negative floating point number. A notification with crossing direction \"UP\" will be generated if the measured value reaches or exceeds \"thresholdValue\" + \"hysteresis\". A notification with crossing direction \"DOWN\" will be generated if the measured value reaches or undercuts \"thresholdValue\" - \"hysteresis\". The hysteresis is defined to prevent storms of threshold crossing notifications. When processing a request to create a threshold, implementations should enforce a suitable minimum value for this attribute (e.g. override the value or reject the request).\n",
								"type": "integer"
							}
						}
					}
				}
			},
			"_links": {
				"description": "Links for this resource.\n",
				"type": "object",
				"required": [
					"self"
				],
				"properties": {
					"self": {
						"description": "This type represents a link to a resource.\n",
						"type": "object",
						"required": [
							"href"
						],
						"properties": {
							"href": {
								"description": "URI of the referenced resource.\n",
								"type": "string",
								"format": "url"
							}
						}
					},
					"object": {
						"description": "Link to a resource representing the NS instance for which performance information is collected. Shall be present if the NS instance information is accessible as a resource."
					}
				}
			}
		}
	}
}