{
	"description": "This type represents an LCM coordination result. It shall comply with the provisions \ndefined in table 12.5.2.3-1.\n\nNOTE: How to determine the supported coordination actions is outside the scope of the \n      present version of this document.\n",
	"required": [
		"id",
		"coordinationResult",
		"nsInstanceId",
		"nsLcmOpOccId",
		"lcmOperationType",
		"coordinationActionName",
		"_links"
	],
	"properties": {
		"id": {
			"description": "An identifier with the intention of being globally unique.\n",
			"type": "string"
		},
		"coordinationResult": {
			"description": "The enumeration LcmCoordResultType defines the permitted values to represent the result \nof executing an LCM coordination action. The coordination result also implies the action \nto be performed by the NFVO as the follow-up to this coordination. The LcmCoordResultType \nshall comply with the provisions defined in table 12.5.4.3.-1.\n\n- CONTINUE: The related LCM operation shall be continued, staying in the state \"PROCESSING\".\n- ABORT: The related LCM operation shall be aborted by transitioning into the state \"FAILED_TEMP\".\n- CANCELLED: The coordination action has been cancelled upon request of the API consumer, \n             i.e. the NFVO. The related LCM operation shall be aborted by transitioning into \n             the state \"FAILED_TEMP\".\n",
			"type": "string",
			"enum": [
				"CONTINUE",
				"ABORT",
				"CACELLED"
			]
		},
		"nsInstanceId": {
			"description": "An identifier with the intention of being globally unique.\n",
			"type": "string"
		},
		"nsLcmOpOccId": {
			"description": "An identifier with the intention of being globally unique.\n",
			"type": "string"
		},
		"lcmOperationType": {
			"description": "The enumeration LcmOperationForCoordType defines the permitted values to represent \nNS lifecycle operation types in NS LCM operation coordination actions. \nIt shall comply with the provisions defined in table 12.5.4.3-1.\n\n- INSTANTIATE: Represents the \"Instantiate NS\" LCM operation.\n- SCALE: Represents the \"Scale NS\" LCM operation.\n- UPDATE: Represents the \"Update NS\" LCM operation.\n- TERMINATE: Represents the \"Terminate NS\" LCM operation. \n- HEAL: Represents the \"Heal NS\" LCM operation.\n",
			"type": "string",
			"enum": [
				"INSTANTIATE",
				"SCALE",
				"UPDATE",
				"TERMINATE",
				"HEAL"
			]
		},
		"coordinationActionName": {
			"description": "A string as defined in IETF RFC 8259.\n",
			"type": "string"
		},
		"outputParams": {
			"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n",
			"type": "object"
		},
		"warnings": {
			"description": "A string as defined in IETF RFC 8259.\n",
			"type": "string"
		},
		"error": {
			"description": "The definition of the general \"ProblemDetails\" data structure from IETF RFC 7807 [19] is reproduced in this structure. Compared to the general framework defined in IETF RFC 7807 [19], the \"status\" and \"detail\" attributes are mandated to be included by the present document, to ensure that the response contains additional textual information about an error. IETF RFC 7807 [19] foresees extensibility of the \"ProblemDetails\" type. It is possible that particular APIs in the present document, or particular implementations, define extensions to define additional attributes that provide more information about the error. The description column only provides some explanation of the meaning to Facilitate understanding of the design. For a full description, see IETF RFC 7807 [19].\n",
			"type": "object",
			"required": [
				"status",
				"detail"
			],
			"properties": {
				"type": {
					"description": "A URI reference according to IETF RFC 3986 [5] that identifies the problem type. It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced. When this member is not present, its value is assumed to be \"about:blank\".\n",
					"type": "string",
					"format": "URI"
				},
				"title": {
					"description": "A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. If type is given and other than \"about:blank\", this attribute shall also be provided. A short, human-readable summary of the problem type.  It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using proactive content negotiation; see [RFC7231], Section 3.4).\n",
					"type": "string"
				},
				"status": {
					"description": "The HTTP status code for this occurrence of the problem. The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.\n",
					"type": "integer"
				},
				"detail": {
					"description": "A human-readable explanation specific to this occurrence of the problem.\n",
					"type": "string"
				},
				"instance": {
					"description": "A URI reference that identifies the specific occurrence of the problem. It may yield further information if dereferenced.\n",
					"type": "string",
					"format": "URI"
				}
			}
		},
		"_links": {
			"description": "Links to resources related to this resource.\n",
			"type": "object",
			"required": [
				"self",
				"nsLcmOpOcc",
				"nsInstance"
			],
			"properties": {
				"self": {
					"description": "This type represents a link to a resource.\n",
					"type": "object",
					"required": [
						"href"
					],
					"properties": {
						"href": {
							"description": "URI of a resource referenced from a notification. Should be an absolute URI (i.e. a URI that contains {apiRoot}), however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) if the {apiRoot} information is not available.\n",
							"type": "string",
							"format": "url"
						}
					}
				},
				"nsLcmOpOcc": {
					"description": "This type represents a link to a resource.\n",
					"type": "object",
					"required": [
						"href"
					],
					"properties": {
						"href": {
							"description": "URI of a resource referenced from a notification. Should be an absolute URI (i.e. a URI that contains {apiRoot}), however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) if the {apiRoot} information is not available.\n",
							"type": "string",
							"format": "url"
						}
					}
				},
				"nsInstance": {
					"description": "This type represents a link to a resource.\n",
					"type": "object",
					"required": [
						"href"
					],
					"properties": {
						"href": {
							"description": "URI of a resource referenced from a notification. Should be an absolute URI (i.e. a URI that contains {apiRoot}), however, may be a relative URI (i.e. a URI where the {apiRoot} part is omitted) if the {apiRoot} information is not available.\n",
							"type": "string",
							"format": "url"
						}
					}
				}
			}
		}
	}
}