SOL005NSDescriptorManagement_def.yaml 33.7 KB
Newer Older
1
 definitions:
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
   NsdInfo:
      type: "object"
      required:
      - "id"    
      - "nsdOnboardingState"
      - "nsdOperationalState"
      - "nsdUsageState"
      - "_links"
      properties:
        id:
          description: >
            Identifier of the on boarded individual NS descriptor
            resource. This identifier is allocated by the NFVO.  
          $ref: "SOL005_def.yaml#/definitions/Identifier"
        nsdId:
          description: >
            This identifier, which is allocated by the NSD
            designer, identifies the NSD in a globally unique
            way. It is copied from the NSD content and shall be
            present after the NSD content is on-boarded.
          $ref: "SOL005_def.yaml#/definitions/Identifier"
        nsdName:
          type: "string"
          description: >  
            "Name of the on boarded NSD. This information is copied from the
            NSD content and shall be present after the NSD content is on-boarded."
        nsdVersion:
          description: >
           Version of the on-boarded NSD. This information is
           copied from the NSD content and shall be present
           after the NSD content is on-boarded.
          $ref: "SOL005_def.yaml#/definitions/Version"
        nsdDesigner:
          type: "string"
          description: >  
            "Designer of the on-boarded NSD. This information is copied
            from the NSD content and shall be present after the NSD content is on-boarded."
        nsdInvariantId:
          description: >
            This identifier, which is allocated by the NSD
            designer, identifies an NSD in a version independent
            manner. This information is copied from the NSD
            content and shall be present after the NSD content is
            on-boarded.
          $ref: "SOL005_def.yaml#/definitions/Identifier"
        vnfPkgIds:
          description: >
            Identifies the VNF package for the VNFD referenced
            by the on-boarded NS descriptor resource.
          type: array
          items:
            $ref: "SOL005_def.yaml#/definitions/Identifier"
        pnfdInfoIds:
          description: >
            Identifies the PnfdInfo element for the PNFD
            referenced by the on-boarded NS descriptor
            resource.
          type: array
          items:
            $ref: "SOL005_def.yaml#/definitions/Identifier"
        nestedNsdInfoIds:
          description: >
            Identifies the NsdInfo element for the nested NSD
            referenced by the on-boarded NS descriptor
            resource.
          type: array
          items:
            $ref: "SOL005_def.yaml#/definitions/Identifier"
        nsdOnboardingState:
          description: >
            On boarding state of the individual NS descriptor resource.
          $ref: "#/definitions/NsdOnboardingStateType"
        onboardingFailureDetails:
          description: >
            Failure details of current on boarding procedure. See
            clause 4.3.5.3 for the details of "ProblemDetails"
            structure.
            It shall be present when the "nsdOnboardingState"
            attribute is CREATED and the uploading or
            processing fails in NFVO.
          $ref: "SOL005_def.yaml#/definitions/ProblemDetails"
        nsdOperationalState:
          description: >
            Operational state of the individual NS descriptor
            resource. This attribute can be modified with the
            PATCH method.
          $ref: "#/definitions/NsdOperationalStateType"
        nsdUsageState:
          description: >
            Usage state of the individual NS descriptor resource.
          $ref: "#/definitions/NsdUsageStateType"
        userDefinedData:
          description: >
            User defined data for the individual NS descriptor
            resource. This attribute can be modified with the
            PATCH method.
          $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
        _links:
          type: "object"
          required:
          - "self"    
          - "nsd_content"
          description: >  
            "Links to resources related to this resource."
          properties:
            self:
              description: >  
                "URI of this resource."
              $ref: "SOL005_def.yaml#/definitions/Link"
            nsd_content:
              description: >  
                "Link to the NSD content resource"          
              $ref: "SOL005_def.yaml#/definitions/Link"
      description: >  
        "This type represents a response for the query NSD operation."	
        
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156
   NsdInfoModifications:
     type: "object"
     description: >
       This type represents attribute modifications for an individual NS
       descriptor resource based on the NsdInfo data type. The attributes of
       NsdInfo that can be modified are included in the NsdInfoModifications
       data type.NOTE: At least one of the attributes - nsdOperationalState and
       userDefinedData - shall be present.
     properties:
       nsdOperationalState:
         $ref: "#/definitions/NsdOperationalStateType"
       userDefinedData:        
         description: >  
           Modifications of the userDefinedData attribute in NsdInfo
           data type. See note. If present, these modifications shall be applied
           according to the rules of JSON Merge PATCH (see IETF RFC 7396 [25]). 
           NOTE- At least one of the attributes - nsdOperationalState and userDefinedData - shall be present.
         type: "array"
         items:
           $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"        
           
   nsdOperationalState:    
     description: >  
       "New value of the "nsdOperationalState" attribute in "NsdInfo"
       data type. See note.Permitted values: 
       ENABLED, 
       DISABLED"
     type: "array"  
     items:
       $ref: "#/definitions/NsdInfoModifications"   
     
   NsdmSubscription:
     type: "object"
     required:
     - "id"     
     - "callbackUri"
     - "_links"     
     properties:
       id:
157 158 159
         description: >
           Identifier of this subscription resource.
         $ref: "SOL005_def.yaml#/definitions/Identifier"
160
       filter:
161 162 163 164 165
         description: >
           Filter settings for this subscription, to define the subset
           of all notifications this subscription relates to. 
           A particular notification is sent to the subscriber if the filter
           matches, or if there is no filter.       
166 167
         $ref: "#/definitions/NsdmNotificationsFilter"
       callbackUri:
168 169 170
         description: >
           The URI of the endpoint to send the notification to.
         $ref: "SOL005_def.yaml#/definitions/Uri"
171 172 173
       _links:
         type: "object"
         description: >  
174
           Links to resources related to this resource.
175 176
         properties:
           self:
177
             $ref: "SOL005_def.yaml#/definitions/Link"
178
     description: >  
179 180
       This type represents a subscription related to notifications about NSD management.
       
181 182 183 184 185 186 187 188 189 190
   NsdmSubscriptionRequest:
     type: "object"
     required:
     - "callbackUri"
     properties:
       filter:
         $ref: "#/definitions/NsdmNotificationsFilter"
       callbackUri:
         type: "string"
         description: >  
191
           The URI of the endpoint to send the notification to.
192 193 194
       authentication:
         $ref: "#/definitions/SubscriptionAuthentication"
     description: >  
195 196
       This type represents a subscription request related to notifications
       about NSD management.
197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227
   NsdmNotificationsFilter:
     type: "object"
     description: >  
       "This type represents a subscription filter related to notifications
       about NSD management. It shall comply with the provisions defined in Table
       5.5.3.2-1 of GS NFV-SOL 005. At a particular nesting level in the filter structure,
       the following applies: All attributes shall match in order for the filter
       to match (logical "and" between different filter attributes). If an attribute
       is an array, the attribute shall match if at least one of the values in the
       array matches (logical "or" between the values of one filter attribute)."     
     properties:
       notificationTypes:
         description: >  
           "Match particular notification types. Permitted values: NsdOnBoardingNotification,
           NsdOnboardingFailureNotification, NsdChangeNotification, NsdDeletionNotification
           PnfdOnBoardingNotification, PnfdOnBoardingFailureNotification, PnfdDeletionNotification.
           The permitted values of the "notificationTypes" ] attribute are spelled
           exactly as the names of the notification types to facilitate automated
           code generation systems."
         type: array
         items:
           type: string
           enum:
           - "NsdOnBoardingNotification"
           - "NsdOnboardingFailureNotification"
           - "NsdChangeNotification"
           - "NsdDeletionNotification"
           - "PnfdOnBoardingNotification"
           - "PnfdOnBoardingFailureNotification"
           - "PnfdDeletionNotification"
       nsdInfoId:
228 229
         description: >
           Match the NsdInfo identifier which is allocated by the NFVO.
230 231
         type: array
         items: 
232
           $ref: "SOL005_def.yaml#/definitions/Identifier"
233
       nsdId:
234 235
         description: >
           Match the NSD identifier, which is allocated by the NSD designer.       
236 237
         type: array
         items: 
238
           $ref: "SOL005_def.yaml#/definitions/Identifier"
239 240
       nsdName:
         description: >  
241
           Match the name of the on boarded NSD.       
242 243 244 245
         type: array
         items: 
           $ref: "SOL005_def.yaml#/definitions/String"
       nsdVersion:
246 247
         description: >
           Match the NSD version listed as part of this attribute.
248 249
         type: array
         items: 
250
           $ref: "SOL005_def.yaml#/definitions/Version"         
251 252 253 254 255 256 257
       nsdDesigner:
         description: >  
           "Match the NSD designer of the on-boarded NSD."
         type: array
         items: 
           $ref: "SOL005_def.yaml#/definitions/String"           
       nsdInvariantId:
258 259 260 261
         description: >  
           Match the NSD invariant identifier which is allocated
           by the NSD designer and identifies an NSD in a
           version independent manner.       
262 263
         type: array
         items: 
264
           $ref: "SOL005_def.yaml#/definitions/Identifier"
265
       vnfPkgIds:
266 267 268
         description: >  
           Match VNF packages with a package identifier listed
           in the attribute.       
269 270
         type: array
         items: 
271
           $ref: "SOL005_def.yaml#/definitions/Identifier"
272
       pnfdInfoIds:
273 274 275
         description: >  
           Match the PnfdInfo identifier for the PNFD
           referenced by the on-boarded NSD.       
276 277
         type: array
         items: 
278
           $ref: "SOL005_def.yaml#/definitions/Identifier"
279
       nestedNsdInfoIds:
280 281 282
         description: >  
           Match the NsdInfo identifier for the nested NSD
           referenced by the on-boarded NSD.       
283 284
         type: array
         items: 
285
           $ref: "SOL005_def.yaml#/definitions/Identifier"
286
       nsdOnboardingState:
287 288
         description: >  
           Match particular on-boarding state of the NSD.
289 290 291 292
         type: array
         items: 
           $ref: "#/definitions/NsdOnboardingStateType"         
       nsdOperationalState:
293 294
         description: >  
           Match particular operational state of the on-boarded NSD.       
295 296 297 298
         type: array
         items: 
           $ref: "#/definitions/NsdOperationalStateType"         
       nsdUsageState:
299 300
         description: >  
           Match particular usage state of the on-boarded NSD.
301 302 303 304
         type: array
         items: 
           $ref: "#/definitions/NsdUsageStateType"         
       pnfdId:
305 306
         description: >  
           Match the PNFD identifier which is copied from the PNFD content.       
307 308
         type: array
         items: 
309
           $ref: "SOL005_def.yaml#/definitions/Identifier"
310 311
       pnfdName:
         description: >  
312
           Match the name of the on-boarded PNFD.
313 314 315 316
         type: array
         items: 
           $ref: "SOL005_def.yaml#/definitions/String"           
       pnfdVersion:
317 318
         description: >  
           Match the PNFD designer of the on-boarded PNFD.         
319 320
         type: array
         items: 
321
           $ref: "SOL005_def.yaml#/definitions/Version"         
322 323
       pnfdProvider:
         description: >  
324
           Match the provider of the on-boarded PNFD.
325 326 327 328
         type: array
         items: 
           $ref: "SOL005_def.yaml#/definitions/String"             
       pnfdInvariantId:
329 330
         description: >  
           Match the PNFD in a version independent manner.       
331 332
         type: array
         items: 
333
           $ref: "SOL005_def.yaml#/definitions/Identifier"         
334
       pnfdOnboardingState:
335 336
         description: >  
           Match particular on-boarding state of the PNFD.         
337 338 339 340
         type: array
         items:       
           $ref: "#/definitions/PnfdOnboardingStateType"
       pnfdUsageState:
341 342
         description: >  
           Match the usage state of the individual PNF descriptor resource.  
343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386
         type: array
         items:       
           $ref: "#/definitions/PnfdUsageStateType"
   SubscriptionAuthentication:
     description: >
       The procedure defined in clause 4.5.2 allows an API consumer to 
       obtain authorization to perform API requests towards
       the API producer, including subscription requests. 
       For sending the actual notifications matching a subscription, the API
       producer needs to obtain separate authorization to actually send the notification to the API consumer.
       If an API consumer requires the API producer to authorize for sending notifications to that API consumer, it shall
       include in the subscription request a data structure that defines the authorization requirements, as defined in
       Table 4.5.3.4-1.
     type: "object"	
     required:
     - "authType"
     properties:
       authType:
         description: >
           Defines the types of Authentication
           Authorization the API consumer is willing to
           accept when receiving a notification.
           
           Permitted values:

           BASIC: In every HTTP request to the
           notification endpoint, use HTTP Basic
           authentication with the client credentials.
           
           OAUTH2_CLIENT_CREDENTIALS: In every
           HTTP request to the notification endpoint, use
           an OAuth 2.0 Bearer token, obtained using the
           client credentials grant type.
           
           TLS_CERT: Every HTTP request to the
           notification endpoint is sent over a mutually
           authenticated TLS session. i.e. not only server
           is authenticated, but also the client is
           authenticated during the TLS tunnel setup

         type: string
         enum: 
           - BASIC
           - OAUTH2_CLIENT_CREDENTIALS      
387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434
           - TLS_CERT           
       paramsBasic:
         type: "object"
         description: >  
           Parameters for authentication/authorization using BASIC.
           Shall be present if authType is "BASIC" and
           the contained information has not been
           provisioned out of band. Shall be absent otherwise.
         properties:
           userName:
             description: >  
               Username to be used in HTTP Basic authentication. 
               Shall be present if it has not been provisioned out of band.
             type: string
           password:
             description: >  
               Password to be used in HTTP Basic authentication. 
               Shall be present if it has not been provisioned out of band.
             type: string             
       paramsOauth2ClientCredentials:
         type: "object"
         description: >  
           Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS.
           Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the
           contained information has not been provisioned out of band. 
           Shall be absent otherwise
         properties:
           clientId:
             description: >  
               Client identifier to be used in the access token
               request of the OAuth 2.0 client credentials
               grant type. Shall be present if it has not been
               provisioned out of band.
             type: string
           clientPassword:
             description: >  
               Client password to be used in the access
               token request of the OAuth 2.0 client
               credentials grant type. Shall be present if it
               has not been provisioned out of band.
             type: string 
           tokenEndpoint:
             description: >  
               The token endpoint from which the access
               token can be obtained. Shall be present if it
               has not been provisioned out of band.
             $ref: "SOL005_def.yaml#/definitions/Uri"       
           
435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450
   NsdOperationalStateType:
     type: "string"
     description: >  
       "The enumeration NsdOperationalStateType shall comply with the provisions
       defined in Table 5.5.4.3-1 of GS NFV_SOL 005. It indicates the operational
       state of the resource.
       ENABLED = The operational state of the resource is enabled. 
       DISABLED = The operational state of the resource is disabled."
     enum:
     - "ENABLED"
     - "DISABLED"
   NsdOnboardingStateType:
     type: "string"
     description: >  
       "The enumeration NsdOnboardingStateType shall comply with the provisions
       defined in Table 5.5.4.5-1 of GS NFV-SOL 005. It indicates the on-boarding
451 452 453 454 455
       state of the NSD.
       CREATED = The NSD information object is created. 
       UPLOADING = The associated NSD content is being uploaded. 
       PROCESSING = The associated NSD content is being processed, e.g. validation. 
       ONBOARDED = The associated NSD content is on-boarded."
456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495
     enum:
     - "CREATED"
     - "UPLOADING"
     - "PROCESSING"
     - "ONBOARDED"
   NsdUsageStateType:
     type: "string"
     description: >  
       "The enumeration NsdUsageStateType shall comply with the provisions
       defined in Table 5.5.4.4-1 of GS NFV-SOL 005. It indicates the usage state
       of the resource.IN_USE = The resource is in use.NOT_IN_USE = The resource
       is not-in-use."
     enum:
     - "IN_USE"
     - "NOT_IN_USE"
   CreateNsdInfoRequest:
     type: "object"
     properties:
       userDefinedData:
         $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
     description: >  
       "This type creates a completely new NS descriptor resource."
   PnfdInfoModifications:
     type: "object"
     required:
     - "userDefinedData"
     properties:
       userDefinedData:
         $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
     description: >  
       "This type represents attribute modifications for an individual PNF
       descriptor resource based on the "PnfdInfo" data type. The attributes of
       "PnfdInfo" that can be modified are included in the "PnfdInfoModifications"
       data type."
   PnfdInfo:
     type: "object"
     required:
     - "id"
     - "pnfdOnboardingState"
     - "pnfdUsageState"
496
     - "_links"     
497 498
     properties:
       id:
499 500 501 502 503
         description: >
           Identifier of the on-boarded individual PNF
           descriptor resource. This identifier is allocated by
           the NFVO.
         $ref: "SOL005_def.yaml#/definitions/Identifier"
504
       pnfdId:
505 506 507 508 509 510
         description: >
           This identifier, which is managed by the PNFD
           designer, identifies the PNFD in a globally unique way. 
           It is copied from the PNFD content and shall
           be present after the PNFD content is on-boarded.
         $ref: "SOL005_def.yaml#/definitions/Identifier"
511 512
       pnfdName:
         description: >  
513 514 515 516 517 518
           Name of the on-boarded PNFD. This information
           is copied from the PNFD content and shall be
           present after the PNFD content is on-boarded.
         type: "string"           
       pnfdersion:
         $ref: "SOL005_def.yaml#/definitions/Version"
519 520
       pnfdProvider:
         description: >  
521 522 523
           "Provider of the on-boarded PNFD. This information is copied from
           the PNFD content and shall be present after the PNFD content is on-boarded."
         type: "string"           
524
       pnfdInvariantId:
525 526 527 528 529
         description: >
           Identifies a PNFD in a version independent
           manner. This attribute is invariant across versions
           of PNFD.
         $ref: "SOL005_def.yaml#/definitions/Identifier"
530
       pnfdOnboardingState:
531 532
         description: >
           On-boarding state of the individual PNF descriptor resource.
533 534
         $ref: "#/definitions/PnfdOnboardingStateType"
       onboardingFailureDetails:
535 536 537 538 539 540
         description: >
           Failure details of current on-boarding procedure.           
           It shall be present when the
           pnfdOnboardingState attribute is CREATED
           and the uploading or processing fails in the NFVO.         
         $ref: "SOL005_def.yaml#/definitions/ProblemDetails"
541
       pnfdUsageState:
542 543
         description: >
           Usage state of the individual PNF descriptor resource.         
544 545
         $ref: "#/definitions/PnfdUsageStateType"
       userDefinedData:
546
         type: "array"
547
         description: >  
548 549 550 551
           User defined data for the individual PNF descriptor resource.
           This attribute can be modified with the PATCH method.
         items:
           type: "object"           
552 553 554 555 556 557 558 559 560
       _links:
         required:
         - "pnfd_content"
         - "self"
         type: "object"
         description: >  
           "Links to resources related to this resource."
         properties:
           self:
561
             $ref: "SOL005_def.yaml#/definitions/Link"
562
           pnfd_content:
563
             $ref: "SOL005_def.yaml#/definitions/Link"
564 565
     description: >  
       "This type represents a response for the query PNFD operation."
566
       
567 568 569
   PnfdOnboardingStateType:
     type: "string"
     description: >  
570 571 572 573 574
       The enumeration PnfdOnboardingStateType shall comply with the provisions
       defined in Table 5.5.4.6-1 of GS-NFV SOL005. It indicates the on-boarding state
       of the individual PNF descriptor resource.
       CREATED = The PNF descriptor resource is created. 
       UPLOADING = The associated PNFD content is being uploaded.
575
       PROCESSING = The associated PNFD content is being processed, e.g. validation.
576
       ONBOARDED = The associated PNFD content is on-boarded.
577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597
     enum:
     - "CREATED"
     - "UPLOADING"
     - "PROCESSING"
     - "ONBOARDING"
   PnfdUsageStateType:
     type: "string"
     description: >  
       "The enumeration PnfdUsageStateType shall comply with the provisions
       defined in Table 5.5.4.7-1 of GS NFV-SOL005. It indicates the usage state
       of the resource.IN-USE = The resource is in use.NOT_IN_USE = The resource
       is not-in-use."
     enum:
     - "IN_USE"
     - "NOT_IN_USE"
   CreatePnfdInfoRequest:
     type: "object"
     properties:
       userDefinedData:
         $ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
     description: >  
598 599 600
       User-defined data for the PNF descriptor resource to be created.
       It shall be present when the user defined data is set for
       the individual PNF descriptor resource to be created.
601 602 603 604 605 606 607
   NsdmLinks:
     type: "object"
     required:
     - "nsdInfo"
     - "subscription"
     properties:
       nsdInfo:
608
         $ref: "SOL005_def.yaml#/definitions/Link"
609
       subscription:
610
         $ref: "SOL005_def.yaml#/definitions/Link"
611 612 613
     description: >  
       "This type represents the links to resources that an NSD management
       notification can contain."
614 615 616 617 618 619 620 621 622 623 624 625 626 627
   PnfdmLinks:
     type: "object"
     required:
     - "pnfdInfo"
     - "subscription"
     properties:
       pnfdInfo:
         $ref: "SOL005_def.yaml#/definitions/Link"
       subscription:
         $ref: "SOL005_def.yaml#/definitions/Link"
     description: >  
       "This type represents the links to resources that a PNFD management
       notification can contain."       
   NsdOnBoardingNotification:
628 629 630 631 632 633 634 635 636 637
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "nsdId"
     - "nsdInfoId"
     - "timeStamp"
     properties:
       id:
638
         $ref: "SOL005_def.yaml#/definitions/Identifier"
639 640 641 642 643 644
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "NsdOnboardingNotification" for this notification type."
       subscriptionId:
645
         $ref: "SOL005_def.yaml#/definitions/Identifier"
646 647
       timeStamp:
         description: >  
648 649
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"
650
       nsdInfoId:
651
         $ref: "SOL005_def.yaml#/definitions/Identifier"
652
       nsdId:
653
         $ref: "SOL005_def.yaml#/definitions/Identifier"
654 655 656 657 658 659 660 661
       _links:
          $ref: "#/definitions/NsdmLinks"
     description: >  
       "This type represents an NSD management notification, which informs
       the receiver of the successful on-boarding of an NSD. It shall comply with
       the provisions defined in Table 5.5.2.9-1. The support of this notification
       is mandatory. The notification shall be triggered by the NFVO when the "
       nsdOnboardingState" attribute of a new NSD has changed to "ONBOARDED"."
662
   NsdOnBoardingFailureNotification:
663 664 665 666 667 668 669 670 671 672
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "nsdInfoId"
     - "onboardingFailureDetails"
     - "timeStamp"
     properties:
       id:
673
         $ref: "SOL005_def.yaml#/definitions/Identifier"
674 675 676 677 678 679
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "NsdOnboardingFailureNotification" for this notification type."
       subscriptionId:
680
         $ref: "SOL005_def.yaml#/definitions/Identifier"
681 682
       timeStamp:
         description: >  
683 684
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"
685
       nsdInfoId:
686
         $ref: "SOL005_def.yaml#/definitions/Identifier"
687
       nsdId:
688
         $ref: "SOL005_def.yaml#/definitions/Identifier"
689
       onboardingFailureDetails:
690
         $ref: "SOL005_def.yaml#/definitions/ProblemDetails"
691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710
       _links:
         $ref: "#/definitions/NsdmLinks"
     description: >  
       "This type represents an NSD management notification, which informs
       the receiver of the failure of on-boarding an NSD. It shall comply with the
       provisions defined in Table 5.5.2.10-1. The support of this notification is
       mandatory. The notification shall be triggered by the NFVO when the on-boarding
       of an NSD has failed."
   NsdChangeNotification:
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "nsdId"
     - "nsdInfoId"
     - "nsdOperationalState"
     - "timeStamp"
     properties:
       id:
711
         $ref: "SOL005_def.yaml#/definitions/Identifier"
712 713 714 715 716 717
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "NsdChangeNotification" for this notification type."
       subscriptionId:
718
         $ref: "SOL005_def.yaml#/definitions/Identifier"
719 720
       timeStamp:
         description: >  
721 722
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"           
723
       nsdInfoId:
724
         $ref: "SOL005_def.yaml#/definitions/Identifier"
725
       nsdId:
726
         $ref: "SOL005_def.yaml#/definitions/Identifier"
727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750
       nsdOperationalState:
         $ref: "#/definitions/NsdOperationalStateType"
       _links:
         $ref: "#/definitions/NsdmLinks"
     description: >  
       "This type represents an NSD management notification, which informs
       the receiver of a change of the "nsdOperationalState" attribute of an on-boarded
       NSD. Changes in the value of the "nsdUsageState" and "nsdOnboardingState"
       attributes are not reported. The notification shall comply with the provisions
       defined in Table 5.5.2.11-1. The support of this notification is mandatory.
       The notification shall be triggered by the NFVO when the value of the "nsdOperationalState"
       attribute has changed, and the "nsdOperationalState" attribute has the value
       "ONBOARDED"."
   NsdDeletionNotification:
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "nsdId"
     - "nsdInfoId"
     - "timeStamp"
     properties:
       id:
751
         $ref: "SOL005_def.yaml#/definitions/Identifier"
752 753 754 755 756 757
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "NsdDeletionNotification " for this notification type."
       subscriptionId:
758
         $ref: "SOL005_def.yaml#/definitions/Identifier"
759 760
       timeStamp:
         description: >  
761 762
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"           
763
       nsdInfoId:
764
         $ref: "SOL005_def.yaml#/definitions/Identifier"
765
       nsdId:
766
         $ref: "SOL005_def.yaml#/definitions/Identifier"
767 768 769 770 771 772 773 774
       _links:
         $ref: "#/definitions/NsdmLinks"
     description: >  
       "This type represents an NSD management notification, which informs
       the receiver of the deletion of an on-boarded NSD. The notification shall
       comply with the provisions defined in Table 5.5.2.12-1. The support of this
       notification is mandatory. The notification shall be triggered by the NFVO
       when it has deleted an on-boarded NSD."
775
   PnfdOnBoardingNotification:
776 777 778 779 780 781 782 783 784 785
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "pnfdId"
     - "pnfdInfoId"
     - "timeStamp"
     properties:
       id:
786
         $ref: "SOL005_def.yaml#/definitions/Identifier"
787 788 789 790 791 792
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "PnfdOnboardingNotification" for this notification type."
       subscriptionId:
793
         $ref: "SOL005_def.yaml#/definitions/Identifier"
794 795
       timeStamp:
         description: >  
796 797
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"           
798
       pnfdInfoId:
799
         $ref: "SOL005_def.yaml#/definitions/Identifier"
800
       pnfdId:
801
         $ref: "SOL005_def.yaml#/definitions/Identifier"
802 803 804 805 806 807 808
       _links:
         $ref: "#/definitions/PnfdmLinks"
     description: >  
       "This type represents a PNFD management notification, which informs
       the receiver of the successful on-boarding of aPNFD. It shall comply with
       the provisions defined in Table 5.5.2.13-1. The support of this notification
       is mandatory. The notification is triggered when a new PNFD is on-boarded."
809
   PnfdOnBoardingFailureNotification:
810 811 812 813 814 815 816 817 818 819
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "onboardingFailureDetails"
     - "pnfdInfoId"
     - "timeStamp"
     properties:
       id:
820
         $ref: "SOL005_def.yaml#/definitions/Identifier"
821 822 823 824 825 826
       notificationType:
          type: "string"
          description: >  
            "Discriminator for the different notification types. Shall be
            set to "PnfdOnboardingFailureNotification" for this notification type."
       subscriptionId:
827
         $ref: "SOL005_def.yaml#/definitions/Identifier"
828 829
       timeStamp:
         description: >  
830 831
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"           
832
       pnfdInfoId:
833
         $ref: "SOL005_def.yaml#/definitions/Identifier"
834
       pnfdId:
835
         $ref: "SOL005_def.yaml#/definitions/Identifier"
836
       onboardingFailureDetails:
837
         $ref: "SOL005_def.yaml#/definitions/ProblemDetails"
838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867
       _links:
         $ref: "#/definitions/PnfdmLinks"
     description: >  
       "This type represents a PNFD management notification, which informs
       the receiver of the failure of on-boarding a PNFD. It shall comply with
       the provisions defined in Table 5.5.2.14-1. The support of this notification
       is mandatory. The notification is triggered when the on-boarding of a PNFD
       fails."
   PnfdDeletionNotification:
     type: "object"
     required:
     - "_links"
     - "id"
     - "notificationType"
     - "pnfdId"
     - "pnfdInfoId"
     - "timeStamp"
     properties:
       id:
         type: "string"
         description: >  
           "Identifier of this notification. If a notification is sent multiple
           times due to multiple subscriptions, the "id" attribute of all these
           notifications shall have the same value."
       notificationType:
         type: "string"
         description: >  
           "Discriminator for the different notification types. Shall be
           set to "PnfdDeletionNotification " for this notification type."
       subscriptionId:
868
         $ref: "SOL005_def.yaml#/definitions/Identifier"
869 870
       timeStamp:
         description: >  
871 872
           Date-time of the generation of the notification.
         $ref: "SOL005_def.yaml#/definitions/DateTime"           
873
       pnfdInfoId:
874
         $ref: "SOL005_def.yaml#/definitions/Identifier"
875
       pnfdId:
876
         $ref: "SOL005_def.yaml#/definitions/Identifier"
877 878 879 880 881 882 883 884
       _links:
         $ref: "#/definitions/PnfdmLinks"
     description: > 
       "This type represents a PNFD management notification, which informs
       the receiver of the deletion of an on-boarded PNFD. The notification shall
       comply with the provisions defined in Table 5.5.2.15-1. The support of this
       notification is mandatory. The notification is triggered when an on-boarded
       PNFD is deleted."