{
    "description": "This type represents a Change state operation occurrence.\n",
    "type": "object",
    "properties": {
      "id": {
        "description": "An identifier with the intention of being globally unique.\n",
        "type": "string"
      },
      "notificationType": {
        "description": "Discriminator for the different notification types. Shall be set to \"ChangeStateNotification\" for this notification type.\n",
        "type": "string"
      },
      "subscriptionId": {
        "description": "An identifier with the intention of being globally unique.\n",
        "type": "string"
      },
      "timestamp": {
        "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "changeStateOpOccId": {
        "description": "An identifier with the intention of being globally unique.\n",
        "type": "string"
      },
      "stateChangedTime": {
        "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "changeStateOperationState": {
        "description": "The enumeration ChangeStateOpOccStateEnumType defines permitted values for the change state operation. It shall comply with the provisions :\n  - PROCESSING\tThe change state operation is currently in execution.\n  - COMPLETED\tThe change state operation has been completed successfully.\n  - FAILED\tThe change state operation has failed.\n",
        "type": "string",
        "enum": [
          "PROCESSING",
          "COMPLETED",
          "FAILED"
        ]
      },
      "managedObjectRef": {
        "description": "This type represents the identifier to reference a managed object of a  particular type. \n",
        "type": "object",
        "properties": {
          "type": {
            "description": "Indicates the type of managed object. Permitted values:\n  - MANO_ENTITY\n  - MANO_SERVICE\n  - MANO_SERVICE_IF\n  - CONSUMED_MANO_IF\n  - MANO_ENTITY_COMPONENT\n\nThe \"MANO_ENTITY COMPONENT\" is only applicable if attribute \"manoEntityComponents\" in \"ManoEntity\" is supported by the API producer.\n",
            "type": "string",
            "enum": [
              "MANO_ENTITY",
              "MANO_SERVICE",
              "MANO_SERVICE_IF",
              "CONSUMED_MANO_IF",
              "MANO_ENTITY_COMPONENT"
            ]
          },
          "objectId": {
            "description": "An identifier with the intention of being globally unique.\n",
            "type": "string"
          },
          "subObjectId": {
            "description": "An identifier that is unique for the respective type within a NFV-MANO functional entity, but that need not be globally unique. Representation: string of variable length..\n",
            "type": "string"
          }
        },
        "required": [
          "type",
          "objectId"
        ]
      },
      "operationalState": {
        "description": "The enumeration OperationalStateEnumType defines values representing the operational state of an NFV-MANO functional application type of managed entity. The OperationalStateEnumType shall comply with the provisions:\n  - STARTED\tThe managed entity is operational.\n  - STOPPED\tThe managed entity is not operational.\n  - STOPPING\tThe managed entity is in the transition to stop.\n  - STARTING\tThe managed entity is in the transition to start and become operational.\n  - RESTARTING\tThe managed entity is in the transition to stop and start again.\n",
        "type": "string",
        "enum": [
          "STARTED",
          "STOPPED",
          "STOPPING",
          "STARTING",
          "RESTARTING"
        ]
      },
      "administrativeState": {
        "description": "The enumeration AdministrativeStateEnumType defines values representing the administrative state of a managed entity. The AdministrativeStateEnumType shall comply with the provisions:\n  - LOCKED\tThe managed entity is administratively prohibited to be used.\n  - UNLOCKED\tThe managed entity is administratively allowed to be used.\n  - LOCKING\tThe managed entity is in the transition to be locked.\n",
        "type": "string",
        "enum": [
          "LOCKED",
          "UNLOCKED",
          "LOCKING"
        ]
      },
      "_links": {
        "description": "Links to resources related to this notification.\n",
        "type": "object",
        "properties": {
          "subscription": {
            "description": "This type represents a link to a resource in a notification, using an absolute or relative URI.\n",
            "type": "object",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "description": "String formatted according to IETF RFC 3986.\n",
                "type": "string"
              }
            }
          },
          "objectInstance": {
            "description": "This type represents a link to a resource in a notification, using an absolute or relative URI.\n",
            "type": "object",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "description": "String formatted according to IETF RFC 3986.\n",
                "type": "string"
              }
            }
          },
          "changeStateOpOcc": {
            "description": "This type represents a link to a resource in a notification, using an absolute or relative URI.\n",
            "type": "object",
            "required": [
              "href"
            ],
            "properties": {
              "href": {
                "description": "String formatted according to IETF RFC 3986.\n",
                "type": "string"
              }
            }
          }
        },
        "required": [
          "subscription",
          "objectInstance",
          "changeStateOpOcc"
        ]
      }
    },
    "required": [
      "id",
      "notificationType",
      "subscriptionId",
      "timestamp",
      "changeStateOpOccId",
      "stateChangedTime",
      "changeStateOperationState",
      "managedObjectRef",
      "_links"
    ]
  }