{
    "description": "This type defines the format of a performance report provided by the NFV-MANO functional  entity to the API consumer as a result of collecting performance information as part  of a PM job. \n",
    "type": "object",
    "properties": {
      "entries": {
        "description": "List of performance information entries. Each performance report entry is for a given  metric of a given object (i.e. measured object instance) corresponding to the related  measured object types, but can include multiple collected values.\n",
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "objectType": {
              "description": "Type of measured object. The applicable measured object type for a measurement is  defined in clause 8.2 of ETSI GS NFV-IFA 031.\n",
              "type": "string"
            },
            "objectInstanceId": {
              "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"
              ]
            },
            "subObjectInstanceId": {
              "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"
            },
            "performanceMetric": {
              "description": "Name of the metric collected. This attribute shall contain the related  \"Measurement Name\" value as defined in clause 8.4 of ETSI GS NFV-IFA 031.\n",
              "type": "string"
            },
            "performanceValues": {
              "description": "List of performance values with associated timestamp.\n",
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "timeStamp": {
                    "description": "Date-time stamp. Representation: String formatted according to IETF RFC 3339.\n",
                    "type": "string",
                    "format": "date-time"
                  },
                  "value": {
                    "description": "Value of the metric collected. The type of this attribute shall correspond to  the related \"Measurement Unit\" as defined in clause 8.4 of ETSI GS NFV-IFA 031.\n"
                  },
                  "context": {
                    "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 keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
                    "type": "object"
                  }
                },
                "required": [
                  "timeStamp",
                  "value"
                ]
              },
              "minItems": 1
            }
          },
          "required": [
            "objectType",
            "objectInstanceId",
            "performanceMetric",
            "performanceValues"
          ]
        },
        "minItems": 1
      }
    },
    "required": [
      "entries"
    ]
  }