SOL005NSLifecycleManagement_def.yaml 135 KB
Newer Older
          Specifies the PNF to be modified in the NS instance. 
          It shall be present only if updateType = "MODIFY_PNF".
        type: array
      removePnfId:
        description: >
          Identifier of the PNF to be deleted from the NS instance.
          It shall be present only if updateType = "REMOVE_PNF".
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/Identifier"
      updateTime:
        description: >
          Timestamp indicating the update time of the NS, i.e. the
          NS will be updated at this timestamp. Cardinality "0"
          indicates the NS update takes place immediately.
        $ref: "SOL005_def.yaml#/definitions/DateTime"
  InstantiateVnfData:
    description: >
      This type represents the information related to a SAP of a NS. The InstantiateVnfData data type specifies the
      parameters that are needed for VNF instantiation. This information element is used for the bottom-up NS creation when
      the OSS/BSS explicitly requests VNF instantiation for a given NS. When the NFVO invokes the Instantiate VNF
      update operation, a set of these parameters are then passed by the NFVO to the VNFM. It shall comply with the
      provisions defined in Table 6.5.3.24-1.
    type: object
    required:
      - vnfdId
    properties:
      vnfdId:
        description: >
          Information sufficient to identify the VNFD which defines
          the VNF to be instantiated.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfFlavourId:
        description: >
          Identifier of the VNF deployment flavor to be instantiated.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      vnfInstantiationLevelId:
        description: >
          Identifier of the instantiation level of the deployment
          flavor to be instantiated. If not present, the default
          instantiation level as declared in the VNFD is
          instantiated.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      vnfInstanceName:
        description: >
          Human-readable name of the VNF instance to be created.
        type: string
      vnfInstanceDescription:
        description: >
          Human-readable description of the VNF instance to be created.
        type: string
      extVirtualLinks:
        description: >
          Information about external VLs to connect the VNF to.
        type: array
          $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData"
      extManagedVirtualLinks:
        description: >
          Information about internal VLs that are managed by other entities than the VNFM.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData"
      localizationLanguage:
        description: >
2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374
          Localization language of the VNF to be instantiated.
          The value shall comply with the format defined in IETF RFC 5646 [16].
        type: string
      additionalParams:
        description: >
          Additional input parameters for the instantiation process,
          specific to the VNF being instantiated.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"

  ChangeVnfFlavourData:
    description: >
      The type represents the information that is requested to be changed
      deployment flavor for an existing VNF instance.
      It shall comply with the provisions defined in Table 6.5.3.25-1.
    type: object
    required:
      - vnfInstanceId
      - newFlavourId
    properties:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance to be modified.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      newFlavourId:
        description: >
          Identifier of the VNF deployment flavor to be instantiated.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      instantiationLevelId:
        description: >
          Identifier of the instantiation level of the deployment
          flavor to be instantiated. If not present, the default
          instantiation level as declared in the VNFD is
          instantiated.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      extVirtualLinks:
        description: >
          Information about external VLs to connect the VNF to.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData"
      extManagedVirtualLinks:
        description: >
          information about internal VLs that are managed by NFVO.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/ExtManagedVirtualLinkData"
      additionalParams:
        description: >
          Additional input parameters for the flavor change
          process, specific to the VNF being modified, as declared
          in the VNFD as part of "ChangeVnfFlavourOpConfig".
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"

  OperateVnfData:
    description: >
      This type represents a VNF instance for which the operational state 
      needs to be changed and the requested new state. It
      shall comply with the provisions defined in Table 6.5.3.31-1.
    type: object
    required:
      - vnfInstanceId
      - changeStateTo
    properties:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      changeStateTo:
        description: >
          The desired operational state (i.e. started or stopped)
          to change the VNF to.
        $ref: "#/definitions/OperationalStates"
      stopType:
        description: >
          It signals whether forceful or graceful stop is requested.           
        $ref: "#/definitions/StopType"
      gracefulStopTimeout:
        description: >
          The time interval (in seconds) to wait for the VNF to be
          taken out of service during graceful stop, before
          stopping the VNF.
        type: integer

  OperationalStates:
    description: >
      STARTED - The VNF instance is up and running.
      STOPPED - The VNF instance has been shut down.
    type: string
    enum:
      - STARTED
      - STOPPED
  StopType:
    description: >
      * FORCEFUL: The VNFM will stop the VNF immediately after accepting the
        request.
      * GRACEFUL: The VNFM will first arrange to take the VNF out of service
        after accepting the request. Once that operation is successful or once
        the timer value specified in the "gracefulStopTimeout" attribute
        expires, the VNFM will stop the VNF.
    type: string
    enum:
      - FORCEFUL
      - GRACEFUL

  ModifyVnfInfoData:
    description: >
      This type represents the information that is requested to be modified for a VNF instance. The information to be
      modified shall comply with the associated NSD.
      EXAMPLE. The vnfPkgId attribute value for a particular VNF instance can only be updated with a value that
      matches the identifier value of a VNF package whose vnfdId is present in the associated profile of the NSD.
    type: object
    required:
      - vnfInstanceId
    properties:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfInstanceName:
        description: >
          New value of the "vnfInstanceName" attribute in
          "VnfInstance", or "null" to remove the attribute.
        type: string
      vnfInstanceDescription:
        description: >
          New value of the "vnfInstanceDescription" attribute in "VnfInstance",
          or "null" to remove the attribute.
        type: string
      vnfPkgId:
        description: >
          New value of the "vnfPkgId" attribute in "VnfInstance".
          The value "null" is not permitted
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfConfigurableProperties:
        description: >
          Modifications to entries in the
          "vnfConfigurableProperties" list, as defined below this Table.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
      Metadata:
        description: >
          Modifications to entries in the "metadata" list, as
          defined below this Table.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
      Extensions:
        description: >
          Modifications to entries in the "extensions" list, as
          defined below this Table.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"

  ChangeExtVnfConnectivityData:
    description: >
      This type describes the information invoked by the NFVO to change the external VNF connectivity information
      maintained by the VNFM. The types of changes that this operation supports are:
      1) Disconnect the external CPs that are connected to a particular external VL, and connect them to a different
      external VL.
      2) Change the connectivity parameters of the existing external CPs, including changing addresses.
      NOTE: Depending on the capabilities of the underlying VIM resources, certain changes (e.g. modifying the IP
      address assignment) might not be supported without deleting the resource and creating another one with
      the modified configuration.
      This type shall comply with the provisions defined in Table 6.5.3.33-1.
    type: object
    required:
      - vnfInstanceId
      - extVirtualLink
    properties:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      extVirtualLink:
        description: >
          Information about external VLs to change (e.g. connect the VNF to).
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/ExtVirtualLinkData"
      additionalParams:
        description: >
          Additional parameters passed by the OSS as input to
          the external connectivity change process, specific to the
          VNF instance being changed.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"

  AssocNewNsdVersionData:
    description: >
      This type specifies a new NSD version that is associated to the NS instance. After issuing the Update NS operation with
      updateType = "AssocNewNsdVersion", the NFVO shall use the referred NSD as a basis for the given NS instance.
      Different versions of the same NSD have same nsdInvariantId, but different nsdId attributes, therefore if the
      nsdInvariantId of the NSD version that is to be associated to this NS instance is different from the one used before, the
      NFVO shall reject the request. Only new versions of the same NSD can be associated to an existing NS instance. This
      data type shall comply with the provisions defined in Table 6.5.3.34-1.
    type: object
    required:
      - newNsdId
    properties:
      newNsdId:
        description: >
          Identifier of the new NSD version that is to be
          associated to the NS instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      sync:
        description: >
          Specify whether the NS instance shall be automatically
          synchronized to the new NSD by the NFVO (in case of
          true value) or the NFVO shall not do any action (in case
          of a false value) and wait for further guidance from
          OSS/BSS (i.e. waiting for OSS/BSS to issue NS
          lifecycle management operation to explicitly add/remove
          VNFs and modify information of VNF instances
          according to the new NSD).
          The synchronization to the new NSD means e.g.
          instantiating/adding those VNFs whose VNFD is
          referenced by the new NSD version but not referenced
          by the old one, terminating/removing those VNFs whose
          VNFD is referenced by the old NSD version but not
          referenced by the new NSD version, modifying
          information of VNF instances to the new applicable
          VNFD provided in the new NSD version.
          A cardinality of 0 indicates that synchronization shall not be done.
        type: boolean

  MoveVnfInstanceData:
    description: >
      This type specifies existing VNF instances to be moved from one NS instance (source) to another NS instance
      (destination). The NS instance defined in the Update NS operation indicates the source NS instance and the destination
      NS instance is specified in this data type (referred to targetNsInstanceId).
      It shall comply with the provisions defined in Table 6.5.3.35-1.
    type: object
    required:
      - targetNsInstanceId
    properties:
      targetNsInstanceId:
        description: >
          Specify the target NS instance where the VNF instances
          are moved to.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfInstanceId:
        description: >
          Specify the VNF instance that is moved.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/Identifier"

  AddVnffgData:
    description: >
      This type specifies the parameters used for the creation of a new VNFFG instance.
      It shall comply with the provisions defined in Table 6.5.3.36-1.
    type: object
    required:
      - vnffgdId
      - vnffgName
      - description
    properties:
      targetNsInstanceId:
        description: >
          Identifier of the VNFFGD used to create this VNFFG
          instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      vnffgName:
        description: >
          Human readable name for the VNFFG.
        type: string
      description:
        description: >
          Human readable description for the VNFFG.
        type: string

  UpdateVnffgData:
    description: >
      This type specifies the parameters used for the update of an existing VNFFG instance.
      It shall comply with the provisions defined in Table 6.5.3.37-1.
    type: object
    required:
      - vnffgInfoId
    properties:
      vnffgInfoId:
        description: >
          Identifier of an existing VNFFG to be updated for the NS Instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNs"
      nfp:
        description: >
          Indicate the desired new NFP(s) for a given VNFFG
          after the operations of addition/removal of NS
          components (e.g. VNFs, VLs, etc.) have been
          completed, or indicate the updated or newly created
          NFP classification and selection rule which applied to an existing NFP.
        type: array
        items:
          $ref: "#/definitions/NfpData"
      nfpInfoId:
        description: >
          Identifier(s) of the NFP to be deleted from a given VNFFG.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/IdentifierInNs"

  NfpData:
    description: >
      This type contains information used to create or modify NFP instance parameters
      for the update of an existing VNFFG instance.
      It shall comply with the provisions defined in Table 6.5.3.38-1.
    type: object
    properties:
      nfpInfoId:
        description: >
          Identifier of the NFP to be modified. It shall be present
          for modified NFPs and shall be absent for the new NFP.
          It shall be present for modified NFPs and shall be absent 
          for the new NFP.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNs"
      nfpName:
        description: >
          Human readable name for the NFP. It shall be present
          for the new NFP, and it may be present otherwise.
          It shall be present for the new NFP, and it may be 
          present otherwise.
        type: string
      description:
        description: >
          Human readable description for the NFP. It shall be
          present for the new NFP, and it may be present otherwise.
          It shall be present for the new NFP, and it may be 
          present otherwise.
          Group(s) of CPs and/or SAPs which the NFP passes by.
          Cardinality can be 0 if only updated or newly created
          NFP classification and selection rule which applied to an
          existing NFP is provided.
          At least a CP or an nfpRule shall be present.
          When multiple identifiers are included, the position of 
          the identifier in the cpGroup value specifies the position 
          of the group in the path.
          $ref: "#/definitions/CpGroupInfo"
      nfpRule:
        description: >
          NFP classification and selection rule. See note 1.
        $ref: "#/definitions/NfpRule"

  NfpRule:
    description: >
      The NfpRule data type is an expression of the conditions that shall be met
      in order for the NFP to be applicable to the packet. The condition acts as a flow classifier and
      it is met only if all the values expressed in the condition are matched
      by those in the packet. It shall comply with the provisions defined in Table 6.5.3.40-1.
    type: object
    properties:
      etherDestinationAddress:
        description: >
          Indicates a destination Mac address.
        $ref: "SOL005_def.yaml#/definitions/MacAddress"
      etherSourceAddress:
        description: >
          Indicates a source Mac address.
        $ref: "SOL005_def.yaml#/definitions/MacAddress"
      etherType:
        description: >
          Human readable description for the VNFFG.
        type: string
        enum:
          - IPV4
          - IPV6
      vlanTag:
        description: >
          Indicates a VLAN identifier in an IEEE 802.1Q-2014
          tag [6] Multiple tags can be included for QinQ stacking. See note.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/String"
      protocol:
        description: >
          Indicates the L4 protocol, For IPv4 [7] this
          corresponds to the field called "Protocol" to identify
          the next level protocol. For IPv6 [28] this
          corresponds to the field is called the "Next Header" field.
          Permitted values: Any keyword defined in the IANA
          protocol registry [1], e.g.:
          TCP
          UDP
          ICMP
        type: string
        enum:
          - TCP
          - UDP
          - ICMP
      dscp:
        description: >
          For IPv4 [7] a string of "0" and "1" digits that
          corresponds to the 6-bit Differentiated Services
          Code Point (DSCP) field of the IP header.
          For IPv6 [28] a string of "0" and "1" digits that
          corresponds to the 6 differentiated services bits of
          the traffic class header field
        type: string
      sourcePortRange:
        description: >
          Indicates a range of source ports
        $ref: "SOL005_def.yaml#/definitions/PortRange"
      destinationPortRange:
        description: >
          Indicates a range of destination ports.
        $ref: "SOL005_def.yaml#/definitions/PortRange"
      sourceIpAddressPrefix:
        description: >
          Indicates the source IP address range in CIDR format.
        $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix"
      destinationIpAddressPrefix:
        description: >
          Indicates the destination IP address range in CIDR format.
        $ref: "SOL005_def.yaml#/definitions/IpAddressPrefix"
      extendedCriteria:
        description: >
          Indicates values of specific bits in a frame.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/Mask"

  ChangeNsFlavourData:
    description: >
      This type specifies an existing NS instance for which the DF needs to be changed.
      This specifies the new DF, the instantiationLevel of the new DF that may be used and
      the additional parameters as input for the flavour change.
      It shall comply with the provisions defined in Table 6.5.3.39-1.
    type: object
    required:
      - newNsFlavourId
    properties:
      newNsFlavourId:
        description: >
          Identifier of an existing VNFFG to be updated for the NS Instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      instantiationLevelId:
        description: >
          Identifier of the instantiation level of the deployment flavour to be instantiated.
          If not present, the default instantiation level as declared in the NSD is instantiated.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"

  AddPnfData:
    description: >
      This type specifies an PNF to be added to the NS instance and the PNF Profile
      to use for this PNF. It shall comply with the provisions defined in Table 6.5.3.14-1.
    type: object
    required:
      - pnfId
      - pnfName
      - pnfdId
      - pnfProfileId
    properties:
      pnfId:
        description: >
          Identifier of the PNF. This identifier is allocated by the OSS/BSS.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      pnfName:
        description: >
          Name of the PNF
        type: string
      pnfdId:
        description: >
          Identifier of the PNFD on which the PNF is based.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      pnfProfileId:
        description: >
          Identifier of related PnfProfile in the NSD on which the PNF is based.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      cpData:
        description: >
          Address assigned for the PNF external CP(s).
        type: array
        items:
          $ref: "#/definitions/PnfExtCpData"

  PnfExtCpData:
    description: >
      This type represents the configuration data on the external CP of the PNF.
      It shall comply with the provisions defined in
      Table 6.5.3.16-1.
    type: object
    required:
      - cpProtocolData
    properties:
      cpInstanceI16:
        description: >
          Identifier of the CP. Shall be present for existing CP.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf"
      cpdId:
        description: >
          Identifier of the Connection Point Descriptor (CPD) for this CP. Shall be present for new CP.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      cpProtocolData:
        description: >
          Address assigned for this CP.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/CpProtocolData"

  ModifyPnfData:
    description: >
      This type specifies an PNF to be modified in the NS instance.
      It shall comply with the provisions defined in
      Table 6.5.3.15-1.
    type: object
    required:
      - pnfId
    properties:
      pnfId:
        description: >
          Identifier of the PNF. This identifier is allocated by the OSS/BSS.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      pnfName:
        description: >
          Name of the PNF.
        type: string
      cpData:
        description: >
          Address assigned for the PNF external CP(s).
        type: array
        items:
          $ref: "#/definitions/PnfExtCpData"

  AffectedVirtualLink:
    description: >
      This type provides information about added, deleted, modified and
      temporary VLs.
    type: object
    required:
      - id
      - virtualLinkDescId
      - changeType
      - networkResource
    properties:
      id:
        description: >
          Identifier of the virtual link instance, identifying the applicable
          "vnfVirtualLinkResourceInfo" entry in the "VnfInstance" data type.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf"
      virtualLinkDescId:
        description: >
          Identifier of the related VLD in the VNFD.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      changeType:
        description: >
          Signals the type of change. Permitted values:
          * ADDED
          * REMOVED
          * MODIFIED
          * TEMPORARY
          * LINK_PORT_ADDED
          * LINK_PORT_REMOVED
          For a temporary resource, an AffectedVirtualLink structure exists as
          long as the temporary resource exists.
        enum:
          - ADDED
          - REMOVED
          - MODIFIED
          - TEMPORARY
          - LINK_PORT_ADDED
          - LINK_PORT_REMOVED
      networkResource:
          Reference to the VirtualNetwork resource. Detailed information is
          (for new and modified resources) or has been (for removed
          resources) available from the VIM.
        $ref: "SOL005_def.yaml#/definitions/ResourceHandle"
      metadata:
        description: >
          Metadata about this resource.
          The content of this attribute shall be a copy of the content of the
          "metadata" attribute of the VnfVirtualLinkResourceInfo structure.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
      This type provides information about added, deleted, modified and
      temporary virtual storage resources.
    type: object
    required:
      - id
      - virtualStorageDescId
      - changeType
      - storageResource
          Identifier of the storage instance, identifying the applicable
          "virtualStorageResourceInfo" entry in the "VnfInstance" data type.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnf"
      virtualStorageDescId:
          Identifier of the related VirtualStorage descriptor in the VNFD.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
      changeType:
          Signals the type of change. Permitted values:
          * ADDED
          * REMOVED
          * MODIFIED
          * TEMPORARY
          For a temporary resource, an AffectedVirtualStorage structure exists
          as long as the temporary resource exists.
        type: string
        enum:
          - ADDED
          - REMOVED
          - MODIFIED
          - TEMPORARY
      storageResource:
        description: >
          Reference to the VirtualStorage resource. Detailed information is
          (for new and modified resources) or has been (for removed
          resources) available from the VIM.
        $ref: "SOL005_def.yaml#/definitions/ResourceHandle"
      metadata:
          Metadata about this resource.
          The content of this attribute shall be a copy of the content of the
          "metadata" attribute of the VirtualStorageResourceInfo structure.
        $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"

  AffectedVnf:
    description: >
      This type provides information about added, deleted and modified VNFs. 
      It shall comply with the provisions in Table 6.5.3.2-1.
    type: object
    required:
      - vnfInstanceId
      - vnfdId
    properties:
      vnfInstanceId:
        description: >
          Identifier of the VNF instance. 
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfdId:
        description: >
          Identifier of the VNFD of the VNF Instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      vnfProfileId:
        description: >
          Identifier of the VNF profile of the NSD.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      vnfName:
        description: >
          Name of the VNF Instance.
        type: string
      changeType:
        description: >
          Signals the type of change
          Permitted values:
          - ADD
          - REMOVE
          - INSTANTIATE
          - TERMINATE
          - SCALE
          - CHANGE_FLAVOUR
          - HEAL
          - OPERATE
          - MODIFY_INFORMATION
          - CHANGE_EXTERNAL_VNF_CONNECTIVITY
        type: string
        enum:
          - ADD
          - INSTANTIATE
          - TERMINATE
          - SCALE
          - CHANGE_FLAVOUR
          - HEAL
          - MODIFY_INFORMATION
          - CHANGE_EXTERNAL_VNF_CONNECTIVITY
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
          - FAILED
      changedInfo:
        description: >
          Information about the changed VNF instance
          information, including VNF configurable properties,if applicable.
          When the "changedInfo" attribute is present, 
          either the "changedVnfInfo" attribute or the
          "changedExtConnectivity" attribute or both shall be present.
        type: object
        required:
          - self
        properties:
          changedVnfInfo:
            description: >
              Information about the changed VNF instance
              information, including configurable properties, 
              if applicable.
            $ref: "#/definitions/ModifyVnfInfoData"
          changedExtConnectivity:
            description: >
              Information about changed external connectivity,
              if applicable.
            $ref: "#/definitions/ExtVirtualLinkInfo"

  AffectedPnf:
    description: >
      This type provides information about added, deleted and modified PNFs. 
      It shall comply with the provisions in Table 6.5.3.3-1.
    type: object
    required:
      - pnfId
      - pnfdId
      - pnfProfileId
    properties:
      pnfId:
        description: >
          Identifier of the affected PNF. This identifier is
          allocated by the OSS/BSS.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      pnfdId:
        description: >
          Identifier of the PNFD on which the PNF is based.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      pnfProfileId:
        description: >
          Identifier of the VNF profile of the NSD.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      pnfName:
        description: >
          Name of the PNF.
        type: string
      cpInstanceId:
        description: >
          Identifier of the CP in the scope of the PNF.
        type: array
        items:
          $ref: "SOL005_def.yaml#/definitions/IdentifierInPnf"
      changeType:
        description: >
          Signals the type of change.
          Permitted values:
          - ADD
          - REMOVE
          - MODIFY
        type: string
        enum:
          - ADD
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
  AffectedVl:
    description: >
      This type provides information about added, deleted and modified VLs. 
      It shall comply with the provisions in Table 6.5.3.4-1.
    type: object
    required:
      - nsVirtualLinkInstanceId
      - nsVirtualLinkDescId
    properties:
      nsVirtualLinkInstanceId:
        description: >
          Identifier of the VL Instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNs"
      nsVirtualLinkDescId:
        description: >
          Identifier of the VLD in the NSD for this VL.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      vlProfileId:
        description: >
          Identifier of the VLD in the NSD for this VL.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      changeType:
        description: >
          Signals the type of change.
          Permitted values:
          - ADD
          - DELETE
          - MODIFY
          - ADD_LINK_PORT
          - REMOVE_LINK_PORT
        type: string
        enum:
          - ADD
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
    description: >
      This type provides information about added, deleted and modified VNFFG instances.
      It shall comply with the
      provisions in Table 6.5.3.5-1.
    type: object
    required:
      - vnffgInstanceId
      - vnffgdId
    properties:
      vnffgInstanceId:
        description: >
          Identifier of the VNFFG instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNs"
      vnffgdId:
        description: >
          Identifier of the VNFFGD of the VNFFG instance.
        $ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
      changeType:
        description: >
          Signals the type of change.
          Permitted values:
          - ADD
          - DELETE
          - MODIFY
        type: string
        enum:
          - ADD
          - DELETE
          - MODIFY
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
        type: string
        enum:
          - COMPLETED
          - ROLLED_BACK
          - FAILED

    description: >
      This type provides information about added, deleted and modified nested NSs.
      It shall comply with the provisions in Table 6.5.3.6-1.
    type: object
    required:
      - nsInstanceId
      - nsdId
    properties:
      nsInstanceId:
        description: >
          Identifier of the nested NS instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      nsdId:
        description: >
          Identifier of the NSD of the nested NS instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      changeType:
        description: >
          Signals the type of lifecycle change.
          Permitted values:
          - ADD
          - REMOVE
          - INSTANTIATE
          - SCALE
          - UPDATE
          - HEAL
          - TERMINATE
        type: string
        enum:
          - ADD
          - REMOVE
          - INSTANTIATE
          - SCALE
          - UPDATE
          - HEAL
          - TERMINATE
      changeResult:
        description: >
          Signals the result of change identified by the
          "changeType" attribute.
          Permitted values:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
          - PARTIALLY_COMPLETED
        type: string
        enum:
          - COMPLETED
          - ROLLED_BACK
          - FAILED
          - PARTIALLY_COMPLETED
    description: >
      This type provides information about added, deleted and modified SAP of a NS.
      It shall comply with the provisions in Table 6.5.3.7-1.
    type: object
    required:
      - sapInstanceId
      - sapdId
    properties:
      sapInstanceId:
        description: >
          Identifier of the nested NS instance.
        $ref: "SOL005_def.yaml#/definitions/Identifier"
      sapdId: