{
  "type": "object",
  "items": {
    "description": "The alarm data type encapsulates information about an alarm.\n",
    "type": "object",
    "required": [
      "id",
      "managedObjectId",
      "rootCauseFaultyResource",
      "alarmRaisedTime",
      "ackState",
      "perceivedSeverity",
      "eventTime",
      "eventType",
      "probableCause",
      "isRootCause",
      "_links"
    ],
    "properties": {
      "id": {
        "description": "An identifier with the intention of being globally unique.\n",
        "type": "string"
      },
      "managedObjectId": {
        "description": "An identifier with the intention of being globally unique.\n",
        "type": "string"
      },
      "rootCauseFaultyResource": {
        "description": "This type represents the faulty virtual resources that have a negative impact on a VNF.\n",
        "type": "object",
        "required": [
          "faultyResource",
          "faultyResourceType"
        ],
        "properties": {
          "faultyResource": {
            "required": [
              "vimConnectionId",
              "resourceId"
            ],
            "type": "object",
            "description": "This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. Information about the resource is available from the VIM.\n",
            "properties": {
              "vimConnectionId": {
                "description": "An identifier with the intention of being globally unique.\n",
                "type": "string"
              },
              "resourceProviderId": {
                "description": "An identifier with the intention of being globally unique.\n",
                "type": "string"
              },
              "resourceId": {
                "description": "An identifier maintained by the VIM or other resource provider. It is expected to be unique within the VIM instance.\n",
                "type": "string"
              },
              "vimLevelResourceType": {
                "description": "Type of the resource in the scope of the VIM or the resource provider.\n",
                "type": "string"
              }
            }
          },
          "faultyResourceType": {
            "description": "The enumeration FaultyResourceType represents those types of faulty resource.\n",
            "type": "string",
            "enum": [
              "COMPUTE",
              "STORAGE",
              "NETWORK"
            ]
          }
        }
      },
      "alarmRaisedTime": {
        "description": "Date-time stamp.  Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "alarmChangedTime": {
        "description": "Date-time stamp.  Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "alarmClearedTime": {
        "description": "Date-time stamp.  Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "ackState": {
        "description": "Acknowledgement state of the alarm.  Permitted values: * UNACKNOWLEDGED * ACKNOWLEDGED.\n",
        "type": "string",
        "enum": [
          "UNACKNOWLEDGED",
          "ACKNOWLEDGED"
        ]
      },
      "perceivedSeverity": {
        "type": "string",
        "enum": [
          "CRITICAL",
          "MAJOR",
          "MINOR",
          "WARNING",
          "INDETERMINATE",
          "CLEARED"
        ]
      },
      "eventTime": {
        "description": "Date-time stamp.  Representation: String formatted according to IETF RFC 3339.\n",
        "type": "string",
        "format": "date-time"
      },
      "eventType": {
        "description": "The enumeration EventType represents those types of events that trigger an alarm. * COMMUNICATIONS_ALARM: An alarm of this type is associated with the  procedure and/or process required conveying information from one point\n  to another (ITU-T Recommendation X.733).\n* PROCESSING_ERROR_ALARM: An alarm of this type is associated with a  software or processing fault (ITU-T Recommendation X.733).\n* ENVIRONMENTAL_ALARM: An alarm of this type is associated with a  condition related to an enclosure in which the equipment resides\n  (ITU-T Recommendation X.733).\n* QOS_ALARM: An alarm of this type is associated with degradation in the  quality of a service (ITU-T Recommendation X.733).\n* EQUIPMENT_ALARM: An alarm of this type is associated with an equipment  fault (ITU-T Recommendation X.733).\n",
        "type": "string",
        "enum": [
          "COMMUNICATIONS_ALARM",
          "PROCESSING_ERROR_ALARM",
          "ENVIRONMENTAL_ALARM",
          "QOS_ALARM",
          "EQUIPMENT_ALARM"
        ]
      },
      "faultType": {
        "description": "Additional information to clarify the type of the fault.\n",
        "type": "string"
      },
      "probableCause": {
        "description": "Information about the probable cause of the fault.\n",
        "type": "string"
      },
      "isRootCause": {
        "description": "Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault.\n",
        "type": "boolean"
      },
      "correlatedAlarmIds": {
        "description": "List of identifiers of other alarms correlated to this fault.\n",
        "type": "array",
        "items": {
          "description": "An identifier with the intention of being globally unique.\n",
          "type": "string"
        }
      },
      "faultDetails": {
        "description": "Provides additional information about the fault.\n",
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "_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"
              }
            }
          },
          "objectInstance": {
            "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"
              }
            }
          }
        }
      }
    }
  }
}
