{
  "type": "object",
  "required": [
    "id",
    "pnfdOnboardingState",
    "pnfdUsageState",
    "_links"
  ],
  "properties": {
    "id": {
      "description": "An identifier with the intention of being globally unique.\n",
      "type": "string"
    },
    "pnfdId": {
      "description": "An identifier with the intention of being globally unique.\n",
      "type": "string"
    },
    "pnfdName": {
      "description": "Name of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded.\n",
      "type": "string"
    },
    "pnfdersion": {
      "description": "A Version.\n",
      "type": "string"
    },
    "pnfdProvider": {
      "description": "\"Provider of the on-boarded PNFD. This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded.\"\n",
      "type": "string"
    },
    "pnfdInvariantId": {
      "description": "An identifier with the intention of being globally unique.\n",
      "type": "string"
    },
    "pnfdOnboardingState": {
      "type": "string",
      "description": "The enumeration PnfdOnboardingStateType shall comply with the provisions defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state of the individual PNF descriptor resource. CREATED = The PNF descriptor resource is created.  UPLOADING = The associated PNFD content is being uploaded. PROCESSING = The associated PNFD content is being processed, e.g. validation. ONBOARDED = The associated PNFD content is on-boarded.\n",
      "enum": [
        "CREATED",
        "UPLOADING",
        "PROCESSING",
        "ONBOARDING"
      ]
    },
    "onboardingFailureDetails": {
      "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": [
        "statussss",
        "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"
        }
      }
    },
    "pnfdUsageState": {
      "type": "string",
      "description": "\"The enumeration PnfdUsageStateType shall comply with the provisions defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource is not-in-use.\"\n",
      "enum": [
        "IN_USE",
        "NOT_IN_USE"
      ]
    },
    "userDefinedData": {
      "type": "array",
      "description": "User defined data for the individual PNF descriptor resource. This attribute can be modified with the PATCH method.\n",
      "items": {
        "type": "object"
      }
    },
    "_links": {
      "required": [
        "pnfd_content",
        "self"
      ],
      "type": "object",
      "description": "\"Links to resources related to this resource.\"\n",
      "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"
            }
          }
        },
        "pnfd_content": {
          "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"
            }
          }
        }
      }
    }
  },
  "description": "\"This type represents a response for the query PNFD operation.\""
}