SOL002-VNFLifecycleManagement-API.yaml 1.61 MB
Newer Older
21001 21002 21003 21004 21005 21006 21007 21008 21009 21010 21011 21012 21013 21014 21015 21016 21017 21018 21019 21020 21021 21022 21023 21024 21025 21026 21027 21028 21029 21030 21031 21032 21033 21034 21035 21036 21037 21038 21039 21040 21041 21042 21043 21044 21045 21046 21047 21048 21049 21050 21051 21052 21053 21054 21055 21056 21057 21058 21059 21060 21061 21062 21063 21064 21065 21066 21067 21068 21069 21070 21071 21072 21073 21074 21075 21076 21077 21078 21079 21080 21081 21082 21083 21084 21085 21086 21087 21088 21089 21090 21091 21092 21093 21094 21095 21096 21097 21098 21099 21100 21101 21102 21103 21104 21105 21106 21107 21108 21109 21110 21111 21112 21113 21114 21115 21116 21117 21118 21119 21120 21121 21122 21123 21124 21125 21126 21127 21128 21129 21130 21131 21132 21133 21134 21135 21136 21137 21138 21139 21140 21141 21142 21143 21144 21145 21146 21147 21148 21149 21150 21151 21152 21153 21154 21155 21156 21157 21158 21159 21160 21161 21162 21163 21164 21165 21166 21167 21168 21169 21170 21171 21172 21173 21174 21175 21176 21177 21178 21179 21180 21181 21182 21183 21184 21185 21186 21187 21188 21189 21190 21191 21192 21193 21194 21195 21196 21197 21198 21199 21200 21201 21202 21203 21204 21205 21206 21207 21208 21209 21210 21211 21212 21213 21214 21215 21216 21217 21218 21219 21220 21221 21222 21223 21224 21225 21226 21227 21228 21229 21230 21231 21232 21233 21234 21235 21236 21237 21238 21239 21240 21241 21242 21243 21244 21245 21246 21247 21248 21249 21250 21251 21252 21253 21254 21255 21256 21257 21258 21259 21260 21261 21262 21263 21264 21265 21266 21267 21268 21269 21270 21271 21272 21273 21274 21275 21276 21277 21278 21279 21280 21281 21282 21283 21284 21285 21286 21287 21288 21289 21290 21291 21292 21293 21294 21295 21296 21297 21298 21299 21300 21301 21302 21303 21304 21305 21306 21307 21308 21309 21310 21311 21312 21313 21314 21315 21316 21317 21318 21319 21320 21321 21322 21323 21324 21325 21326 21327 21328 21329 21330 21331 21332 21333 21334 21335 21336 21337 21338 21339 21340 21341 21342 21343 21344 21345 21346 21347 21348 21349 21350 21351 21352 21353 21354 21355 21356 21357 21358 21359 21360 21361 21362 21363 21364 21365 21366 21367 21368 21369 21370 21371 21372 21373 21374 21375 21376 21377 21378 21379 21380 21381 21382 21383 21384 21385 21386 21387 21388 21389 21390 21391 21392 21393 21394 21395 21396 21397 21398 21399 21400 21401 21402 21403 21404 21405 21406 21407 21408 21409 21410 21411 21412 21413 21414 21415 21416 21417 21418 21419 21420 21421 21422 21423 21424 21425 21426 21427 21428 21429 21430 21431 21432 21433 21434 21435 21436 21437 21438 21439 21440 21441 21442 21443 21444 21445 21446 21447 21448 21449 21450 21451 21452 21453 21454 21455 21456 21457 21458 21459 21460 21461 21462 21463 21464 21465 21466 21467 21468 21469 21470 21471 21472 21473 21474 21475 21476 21477 21478 21479 21480 21481 21482 21483 21484 21485 21486 21487 21488 21489 21490 21491 21492 21493 21494 21495 21496 21497 21498 21499 21500 21501 21502 21503 21504 21505 21506 21507 21508 21509 21510 21511 21512 21513 21514 21515 21516 21517 21518 21519 21520 21521 21522 21523 21524 21525 21526 21527 21528 21529 21530 21531 21532 21533 21534 21535 21536 21537 21538 21539 21540 21541 21542 21543 21544 21545 21546 21547 21548 21549 21550 21551 21552 21553 21554 21555 21556 21557 21558 21559 21560 21561 21562 21563 21564 21565 21566 21567 21568 21569 21570 21571 21572 21573 21574 21575 21576 21577 21578 21579 21580 21581 21582 21583 21584 21585 21586 21587 21588 21589 21590 21591 21592 21593 21594 21595 21596 21597 21598 21599 21600 21601 21602 21603 21604 21605 21606 21607 21608 21609 21610 21611 21612 21613 21614 21615 21616 21617 21618 21619 21620 21621 21622 21623 21624 21625 21626 21627 21628 21629 21630 21631 21632 21633 21634 21635 21636 21637 21638 21639 21640 21641 21642 21643 21644 21645 21646 21647 21648 21649 21650 21651 21652 21653 21654 21655 21656 21657 21658 21659 21660 21661 21662 21663 21664 21665 21666 21667 21668 21669 21670 21671 21672 21673 21674 21675 21676 21677 21678 21679 21680 21681 21682 21683 21684 21685 21686 21687 21688 21689 21690 21691 21692 21693 21694 21695 21696 21697 21698 21699 21700 21701 21702 21703 21704 21705 21706 21707 21708 21709 21710 21711 21712 21713 21714 21715 21716 21717 21718 21719 21720 21721 21722 21723 21724 21725 21726 21727 21728 21729 21730 21731 21732 21733 21734 21735 21736 21737 21738 21739 21740 21741 21742 21743 21744 21745 21746 21747 21748 21749 21750 21751 21752 21753 21754 21755 21756 21757 21758 21759 21760 21761 21762 21763 21764 21765 21766 21767 21768 21769 21770 21771 21772 21773 21774 21775 21776 21777 21778 21779 21780 21781 21782 21783 21784 21785 21786 21787 21788 21789 21790 21791 21792 21793 21794 21795 21796 21797 21798 21799 21800 21801 21802 21803 21804 21805 21806 21807 21808 21809 21810 21811 21812 21813 21814 21815 21816 21817 21818 21819 21820 21821 21822 21823 21824 21825 21826 21827 21828 21829 21830 21831 21832 21833 21834 21835 21836 21837 21838 21839 21840 21841 21842 21843 21844 21845 21846 21847 21848 21849 21850 21851 21852 21853 21854 21855 21856 21857 21858 21859 21860 21861 21862 21863 21864 21865 21866 21867 21868 21869 21870 21871 21872 21873 21874 21875 21876 21877 21878 21879 21880 21881 21882 21883 21884 21885 21886 21887 21888 21889 21890 21891 21892 21893 21894 21895 21896 21897 21898 21899 21900 21901 21902 21903 21904 21905 21906 21907 21908 21909 21910 21911 21912 21913 21914 21915 21916 21917 21918 21919 21920 21921 21922 21923 21924 21925 21926 21927 21928 21929 21930 21931 21932 21933 21934 21935 21936 21937 21938 21939 21940 21941 21942 21943 21944 21945 21946 21947 21948 21949 21950 21951 21952 21953 21954 21955 21956 21957 21958 21959 21960 21961 21962 21963 21964 21965 21966 21967 21968 21969 21970 21971 21972 21973 21974 21975 21976 21977 21978 21979 21980 21981 21982 21983 21984 21985 21986 21987 21988 21989 21990 21991 21992 21993 21994 21995 21996 21997 21998 21999 22000
    post:
      description: |
        The POST method changes the external connectivity of a VNF instance.
      parameters:
        - name: ChangeExtVnfConnectivityRequest
          description: |
            Parameters for the Change external VNF connectivity operation.
          in: body
          required: true
          schema:
            description: >
              This type represents request parameters for the  "Change external
              VNF connectivity" operation to modify the external connectivity of
              a VNF instance.
            type: object
            required:
              - extVirtualLinks
            properties:
              extVirtualLinks:
                description: >
                  Information about external VLs to change (e.g. connect the VNF
                  to).
                type: array
                items:
                  description: |
                    This type represents an external VL.
                  type: object
                  required:
                    - id
                    - resourceId
                    - extCps
                  properties:
                    id:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    vimConnectionId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    resourceProviderId:
                      description: >
                        An identifier with the intention of being globally
                        unique.
                      type: string
                    resourceId:
                      description: >
                        An identifier maintained by the VIM or other resource
                        provider. It is expected to be unique within the VIM
                        instance.
                      type: string
                    extCps:
                      description: >
                        External CPs of the VNF to be connected to this external
                        VL.
                      type: array
                      items:
                        description: >
                          This type represents configuration information for
                          external CPs created from a CPD.
                        type: object
                        required:
                          - cpdId
                        properties:
                          cpdId:
                            description: >
                              An identifier that is unique within a VNF
                              descriptor.
                            type: string
                          cpConfig:
                            description: >
                              List of instance data that need to be configured
                              on the CP instances created from the respective
                              CPD.
                            type: array
                            items:
                              description: >
                                This type represents an externally provided link
                                port or network address information per instance
                                of an external connection point. In case a link
                                port is provided, the VNFM shall use that link
                                port when connecting the external CP to the
                                external VL. In a link port is not provided, the
                                VNFM shall create a link port on the external
                                VL, and use that link port to connect the
                                external CP to the external VL.
                              type: object
                              properties:
                                cpInstanceId:
                                  description: >
                                    An identifier that is unique for the
                                    respective type within a VNF instance, but
                                    may not be globally unique.
                                  type: string
                                linkPortId:
                                  description: >
                                    An identifier with the intention of being
                                    globally unique.
                                  type: string
                                cpProtocolData:
                                  description: >
                                    Parameters for configuring the network
                                    protocols on the link port that connects the
                                    CP to a VL.  The following conditions apply
                                    to the attributes "linkPortId" and
                                    "cpProtocolData":  * The "linkPortId" and
                                    "cpProtocolData" attributes shall both be
                                      absent for the deletion of an existing external CP instance
                                      addressed by cpInstanceId. 
                                    * At least one of these attributes shall be
                                    present for a
                                      to-be-created external CP instance or an existing external
                                      CP instance.
                                    * If the "linkPortId" attribute is absent,
                                    the VNFM shall create a
                                      link port.
                                    * If the "cpProtocolData" attribute is
                                    absent, the "linkPortId"
                                      attribute shall be provided referencing a pre-created link port,
                                      and the VNFM can use means outside the scope of the present
                                      document to obtain the pre-configured address information for the
                                      connection point from the resource representing the link port.
                                    * If both "cpProtocolData" and "linkportId"
                                    are provided, the API
                                      consumer shall ensure that the cpProtocolData can be used with the
                                      pre-created link port referenced by "linkPortId".
                                  type: array
                                  items:
                                    description: >
                                      This type represents network protocol
                                      data. 
                                    type: object
                                    required:
                                      - layerProtocol
                                    properties:
                                      layerProtocol:
                                        description: >
                                          Identifier of layer(s) and protocol(s).
                                          This attribute allows to signal the
                                          addition of further types of layer and
                                          protocol in future versions of the
                                          present document in a
                                          backwards-compatible way. In the current
                                          version of the present document, only IP
                                          over Ethernet is supported.
                                        type: string
                                        enum:
                                          - IP_OVER_ETHERNET
                                      ipOverEthernet:
                                        description: >
                                          This type represents network address
                                          data for IP over Ethernet.
                                        type: object
                                        properties:
                                          macAddress:
                                            description: >
                                              A MAC address. Representation: string
                                              that consists of groups of two
                                              hexadecimal digits, separated by hyphens
                                              or colons.
                                            type: string
                                            format: MAC
                                          ipAddresses:
                                            description: >
                                              List of IP addresses to assign to the CP
                                              instance. Each entry represents IP
                                              address data for fixed or dynamic IP
                                              address assignment per subnet. If this
                                              attribute is not present, no IP address
                                              shall be assigned.
                                            type: array
                                            items:
                                              type: object
                                              required:
                                                - type
                                              properties:
                                                type:
                                                  description: >
                                                    The type of the IP addresses. Permitted
                                                    values: IPV4, IPV6.
                                                  type: string
                                                  enum:
                                                    - IPV4
                                                    - IPV6
                                                fixedAddresses:
                                                  description: >
                                                    Fixed addresses to assign (from the
                                                    subnet defined by "subnetId" if
                                                    provided). Exactly one of
                                                    "fixedAddresses", "numDynamicAddresses"
                                                    or "ipAddressRange" shall be present.
                                                  type: array
                                                  items:
                                                    description: >
                                                      An IPV4 or IPV6 address. Representation:
                                                      In case of an IPV4 address, string that
                                                      consists of four decimal integers
                                                      separated by dots, each integer ranging
                                                      from 0 to 255. In case of an IPV6
                                                      address, string that  consists of groups
                                                      of zero to four hexadecimal digits,
                                                      separated by colons.
                                                    type: string
                                                    format: IP
                                                numDynamicAddresses:
                                                  description: >
                                                    Number of dynamic addresses to assign
                                                    (from the subnet defined by "subnetId"
                                                    if provided). Exactly one of
                                                    "fixedAddresses", "numDynamicAddresses"
                                                    or "ipAddressRange" shall be present.
                                                  type: integer
                                                addressRange:
                                                  description: >
                                                    An IP address range to be used, e.g. in
                                                    case of egress connections. In case this
                                                    attribute is present, IP addresses from
                                                    the range will be used.
                                                  type: object
                                                  required:
                                                    - minAddress
                                                    - maxAddress
                                                  properties:
                                                    minAddress:
                                                      description: >
                                                        An IPV4 or IPV6 address. Representation:
                                                        In case of an IPV4 address, string that
                                                        consists of four decimal integers
                                                        separated by dots, each integer ranging
                                                        from 0 to 255. In case of an IPV6
                                                        address, string that  consists of groups
                                                        of zero to four hexadecimal digits,
                                                        separated by colons.
                                                      type: string
                                                      format: IP
                                                    maxAddress:
                                                      description: >
                                                        An IPV4 or IPV6 address. Representation:
                                                        In case of an IPV4 address, string that
                                                        consists of four decimal integers
                                                        separated by dots, each integer ranging
                                                        from 0 to 255. In case of an IPV6
                                                        address, string that  consists of groups
                                                        of zero to four hexadecimal digits,
                                                        separated by colons.
                                                      type: string
                                                      format: IP
                                                subnetId:
                                                  description: >
                                                    An identifier maintained by the VIM or
                                                    other resource provider. It is expected
                                                    to be unique within the VIM instance.
                                                  type: string
                    extLinkPorts:
                      description: >
                        Externally provided link ports to be used to connect
                        external connection points to this external VL. If this
                        attribute is not present, the VNFM shall create the link
                        ports on the external VL. 
                      type: array
                      items:
                        description: >
                          This type represents an externally provided link port
                          to be used to connect an external connection point to
                          an external VL.
                        type: object
                        required:
                          - id
                          - resourceHandle
                        properties:
                          id:
                            description: >
                              An identifier with the intention of being globally
                              unique.
                            type: string
                          resourceHandle:
                            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.
                            properties:
                              vimConnectionId:
                                description: >
                                  An identifier with the intention of being
                                  globally unique.
                                type: string
                              resourceProviderId:
                                description: >
                                  An identifier with the intention of being
                                  globally unique.
                                type: string
                              resourceId:
                                description: >
                                  An identifier maintained by the VIM or other
                                  resource provider. It is expected to be unique
                                  within the VIM instance.
                                type: string
                              vimLevelResourceType:
                                description: >
                                  Type of the resource in the scope of the VIM
                                  or the resource provider.
                                type: string
              additionalParams:
                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
                  key- value pairs is represented as an object. It shall comply
                  with the provisions  defined in clause 4 of IETF RFC 7159. 
                type: object
      responses:
        '202':
          description: >
            Accepted

            The request was accepted for processing, but the processing has not
            been completed. On success, the HTTP response shall include a
            "Location" HTTP header that contains the URI of the newly-created
            "VNF LCM operation occurrence" resource corresponding to the
            operation.
          headers:
            Content-Type:
              description: The MIME type of the body of the response.
              type: string
              maximum: 1
              minimum: 1
            Location:
              description: The resource URI of the created VNF instance
              type: string
              format: url
            WWW-Authenticate:
              description: >
                Challenge if the corresponding HTTP request has not provided
                authorization, or error details if the corresponding HTTP
                request has provided an invalid authorization token.
              type: string
              maximum: 1
              minimum: 0
          schema:
            description: |
              This type represents a VNF instance.
            type: object
            required:
              - id
              - vnfdId
              - vnfProvider
              - vnfProductName
              - vnfSoftwareVersion
              - vnfdVersion
              - onboardedVnfPkgInfoId
              - instantiationState
            properties:
              id:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfInstanceName:
                description: >
                  Name of the VNF instance. This attribute can be modified with
                  the PATCH method.
                type: string
              vnfInstanceDescription:
                description: >
                  Human-readable description of the VNF instance. This attribute
                  can be modified with the PATCH method.
                type: string
              vnfdId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfProvider:
                description: >
                  Provider of the VNF and the VNFD. The value is copied from the
                  VNFD.
                type: string
              vnfProductName:
                description: >
                  Name to identify the VNF Product. The value is copied from the
                  VNFD.
                type: string
              vnfSoftwareVersion:
                description: |
                  A Version.
                type: string
              vnfdVersion:
                description: |
                  A Version.
                type: string
              onboardedVnfPkgInfoId:
                description: |
                  An identifier with the intention of being globally unique.
                type: string
              vnfConfigurableProperties:
                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
                  key- value pairs is represented as an object. It shall comply
                  with the provisions  defined in clause 4 of IETF RFC 7159. 
                type: object
              instantiationState:
                description: |
                  The instantiation state of the VNF.
                type: string
                enum:
                  - NOT_INSTANTIATED
                  - INSTANTIATED
              instantiatedVnfInfo:
                type: object
                required:
                  - flavourId
                  - vnfState
                properties:
                  flavourId:
                    description: |
                      An identifier that is unique within a VNF descriptor.
                    type: string
                  vnfState:
                    type: string
                    enum:
                      - STARTED
                      - STOPPED
                  scaleStatus:
                    description: >
                      Scale status of the VNF, one entry per aspect. Represents
                      for every scaling aspect how "big" the VNF has been scaled
                      w.r.t. that aspect.
                    type: array
                    items:
                      required:
                        - aspectId
                        - scaleLevel
                      type: object
                      properties:
                        aspectId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        scaleLevel:
                          description: >
                            Indicates the scale level. The minimum value shall
                            be 0 and the maximum value shall be <= maxScaleLevel
                            as described in the VNFD.
                          type: integer
                  extCpInfo:
                    description: >
                      Information about the external CPs exposed by the VNF
                      instance.
                    type: array
                    minItems: 1
                    items:
                      type: object
                      required:
                        - id
                        - cpdId
                      properties:
                        id:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        cpdId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        addresses:
                          description: >
                            List of network addresses that have been configured
                            (statically or dynamically) on the CP.
                          type: array
                          items:
                            description: >
                              This type represents information about a network
                              address that has been assigned.
                            type: object
                            required:
                              - macAddress
                            properties:
                              macAddress:
                                description: |
                                  Assigned MAC address.
                                type: string
                              ipAddress:
                                description: >
                                  IP address. Present if an IP address was
                                  assigned.
                                type: string
                              subnetIpRanges:
                                description: >
                                  IP address ranges defining the subnet in which
                                  the IP address was assigned. May be present if
                                  the "ipAddress" attribute is present, and
                                  shall be absent if the "ipAddress" attribute
                                  is not present.
                                type: array
                                items:
                                  type: object
                                  required:
                                    - minIpAddress
                                    - maxIpAddress
                                  properties:
                                    minIpAddress:
                                      description: >
                                        Lowest IP address belonging to the
                                        range.
                                      type: string
                                      format: ipaddress
                                    maxIpAddress:
                                      description: >
                                        Highest IP address belonging to the
                                        range.
                                      type: string
                                      format: ipaddress
                  extVirtualLinkInfo:
                    description: >
                      Information about the external VLs the VNF instance is
                      connected to.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - resourceHandle
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        resourceHandle:
                          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.
                          properties:
                            vimConnectionId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceProviderId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceId:
                              description: >
                                An identifier maintained by the VIM or other
                                resource provider. It is expected to be unique
                                within the VIM instance.
                              type: string
                            vimLevelResourceType:
                              description: >
                                Type of the resource in the scope of the VIM or
                                the resource provider.
                              type: string
                        extLinkPorts:
                          description: |
                            Link ports of this VL.
                          type: array
                          items:
                            description: >
                              This type represents information about a link port
                              of an external VL, i.e. a port providing
                              connectivity for the VNF to an NS VL. 
                            type: object
                            required:
                              - id
                              - resourceHandle
                            properties:
                              id:
                                description: >
                                  An identifier with the intention of being
                                  globally unique.
                                type: string
                              resourceHandle:
                                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.
                                properties:
                                  vimConnectionId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceProviderId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceId:
                                    description: >
                                      An identifier maintained by the VIM or
                                      other resource provider. It is expected to
                                      be unique within the VIM instance.
                                    type: string
                                  vimLevelResourceType:
                                    description: >
                                      Type of the resource in the scope of the
                                      VIM or the resource provider.
                                    type: string
                              cpInstanceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                  extManagedVirtualLinkInfo:
                    description: |
                      External virtual links the VNF instance is connected to.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - vnfVirtualLinkDescId
                      properties:
                        id:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        vnfVirtualLinkDescId:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        networkResource:
                          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.
                          properties:
                            vimConnectionId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceProviderId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceId:
                              description: >
                                An identifier maintained by the VIM or other
                                resource provider. It is expected to be unique
                                within the VIM instance.
                              type: string
                            vimLevelResourceType:
                              description: >
                                Type of the resource in the scope of the VIM or
                                the resource provider.
                              type: string
                        vnfLinkPorts:
                          description: |
                            Link ports of this VL.
                          type: array
                          items:
                            type: object
                            required:
                              - id
                              - resourceHandle
                            properties:
                              id:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              resourceHandle:
                                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.
                                properties:
                                  vimConnectionId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceProviderId:
                                    description: >
                                      An identifier with the intention of being
                                      globally unique.
                                    type: string
                                  resourceId:
                                    description: >
                                      An identifier maintained by the VIM or
                                      other resource provider. It is expected to
                                      be unique within the VIM instance.
                                    type: string
                                  vimLevelResourceType:
                                    description: >
                                      Type of the resource in the scope of the
                                      VIM or the resource provider.
                                    type: string
                              cpInstanceId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                  monitoringParameters:
                    description: |
                      Active monitoring parameters.
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - value
                        - timeStamp
                      properties:
                        id:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        name:
                          description: >
                            Human readable name of the monitoring parameter, as
                            defined in the VNFD.
                          type: string
                        value:
                          description: >
                            Value of the monitoring parameter known to the VNFM
                            (e.g. obtained for autoscaling purposes). The type
                            of the "value" attribute (i.e. scalar, structure
                            (Object in JSON), or array (of scalars, arrays or
                            structures/Objects)) is assumed to be defined in an
                            external measurement specification outside the scope
                            of the present document.
                          type: object
                        timeStamp:
                          description: >
                            Represents the point in time when the measurement
                            has been performed, as known to the VNFM. Should be
                            formatted according to ETF RFC 3339.
                          type: string
                  localizationLanguage:
                    description: >
                      Information about localization language of the VNF
                      (includes e.g. strings in the VNFD). The localization
                      languages supported by a VNF can be declared in the VNFD,
                      and localization language selection can take place at
                      instantiation time. The value shall comply with the format
                      defined in IETF RFC 5646.
                    type: string
                  vnfcResourceInfo:
                    description: >
                      Information about the virtualised compute and storage
                      resources used by the VNFCs of the VNF instance.
                    type: array
                    items:
                      description: >
                        This type represents the information on virtualised
                        compute and storage resources used by a VNFC in a VNF
                        instance.
                      type: object
                      required:
                        - id
                        - vduId
                        - computeResource
                        - vnfcCpInfo
                      properties:
                        id:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        vduId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        computeResource:
                          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.
                          properties:
                            vimConnectionId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceProviderId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceId:
                              description: >
                                An identifier maintained by the VIM or other
                                resource provider. It is expected to be unique
                                within the VIM instance.
                              type: string
                            vimLevelResourceType:
                              description: >
                                Type of the resource in the scope of the VIM or
                                the resource provider.
                              type: string
                        storageResourceIds:
                          description: >
                            References to the VirtualStorage resources. The
                            value refers to a VirtualStorageResourceInfo item in
                            the VnfInstance.
                          type: array
                          items:
                            description: >
                              An identifier that is unique for the respective
                              type within a VNF instance, but may not be
                              globally unique.
                            type: string
                        reservationId:
                          description: >
                            An identifier with the intention of being globally
                            unique.
                          type: string
                        vnfcCpInfo:
                          description: >
                            CPs of the VNFC instance. Shall be present when that
                            particular CP of the VNFC instance is associated to
                            an external CP of the VNF instance. May be present
                            otherwise.
                          type: array
                          items:
                            type: object
                            required:
                              - id
                              - cpdId
                            properties:
                              id:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              cpdId:
                                description: >
                                  An identifier that is unique within a VNF
                                  descriptor.
                                type: string
                              vnfExtCpId:
                                description: >
                                  An identifier that is unique for the
                                  respective type within a VNF instance, but may
                                  not be globally unique.
                                type: string
                              addresses:
                                description: >
                                  This type represents information about a
                                  network address that has been assigned.
                                type: object
                                required:
                                  - macAddress
                                properties:
                                  macAddress:
                                    description: |
                                      Assigned MAC address.
                                    type: string
                                  ipAddress:
                                    description: >
                                      IP address. Present if an IP address was
                                      assigned.
                                    type: string
                                  subnetIpRanges:
                                    description: >
                                      IP address ranges defining the subnet in
                                      which the IP address was assigned. May be
                                      present if the "ipAddress" attribute is
                                      present, and shall be absent if the
                                      "ipAddress" attribute is not present.
                                    type: array
                                    items:
                                      type: object
                                      required:
                                        - minIpAddress
                                        - maxIpAddress
                                      properties:
                                        minIpAddress:
                                          description: >
                                            Lowest IP address belonging to the
                                            range.
                                          type: string
                                          format: ipaddress
                                        maxIpAddress:
                                          description: >
                                            Highest IP address belonging to the
                                            range.
                                          type: string
                                          format: ipaddress
                        metadata:
                          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 key- value pairs is represented as
                            an object. It shall comply with the provisions 
                            defined in clause 4 of IETF RFC 7159. 
                          type: object
                  virtualLinkResourceInfo:
                    description: >
                      Information about the virtualised network resources used
                      by the VLs of the VNF instance.
                    type: array
                    items:
                      description: >
                        This type represents the information that allows
                        addressing a virtualised resource that is used by an
                        internal VL instance in a VNF instance.
                      type: object
                      required:
                        - id
                        - virtualLinkDescId
                        - networkResource
                        - vnfLinkPorts
                      properties:
                        id:
                          description: >
                            An identifier that is unique for the respective type
                            within a VNF instance, but may not be globally
                            unique.
                          type: string
                        virtualLinkDescId:
                          description: >
                            An identifier that is unique within a VNF
                            descriptor.
                          type: string
                        networkResource:
                          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.
                          properties:
                            vimConnectionId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceProviderId:
                              description: >
                                An identifier with the intention of being
                                globally unique.
                              type: string
                            resourceId:
                              description: >
                                An identifier maintained by the VIM or other
                                resource provider. It is expected to be unique
                                within the VIM instance.
                              type: string
                            vimLevelResourceType:
                              description: >
                                Type of the resource in the scope of the VIM or
                                the resource provider.
                              type: string
                        reservationId:
                          description: >
                            An identifier with the intention of being globally