fix tosca template bugs
[modeling/etsicatalog.git] / catalog / pub / utils / toscaparser / testdata / vnf / vSBC / onap_dm.yaml
1 tosca_definitions_version: tosca_simple_yaml_1_0
2 #Artifact Types
3 #Based on R2 Design-time Resource DM clean version v8
4 artifact_types:
5   tosca.artifacts.nfv.SwImage:
6     derived_from: tosca.artifacts.Deployment.Image
7
8 #Capabilities Type
9 #Based on R2 Design-time Resource DM clean version v21
10 capability_types:
11   tosca.capabilities.nfv.VirtualBindable:
12     derived_from: tosca.capabilities.Root
13   
14   tosca.capabilities.nfv.Metric:
15     derived_from: tosca.capabilities.Root
16   
17   tosca.capabilities.nfv.VirtualCompute:
18     derived_from: tosca.capabilities.Root
19     properties:
20       logical_node:
21         type: tosca.datatypes.nfv.LogicalNodeData
22         required: false
23       compute_requirements:
24         type: map
25         entry_schema:
26           type: string
27         required: false
28       requested_additional_capabilities:
29         type: map
30         entry_schema:
31            type: tosca.datatypes.nfv.RequestedAdditionalCapability
32         required: false
33       virtual_memory:
34         type: tosca.datatypes.nfv.VirtualMemory
35         required: true
36       virtual_cpu:
37         type: tosca.datatypes.nfv.VirtualCpu
38         required: true
39
40   tosca.capabilities.nfv.VirtualStorage:
41     derived_from: tosca.capabilities.Root
42
43   tosca.capabilities.nfv.VirtualLinkable:
44     derived_from: tosca.capabilities.Root
45   
46   tosca.capabilities.nfv.ExtVirtualLinkable:
47     derived_from: tosca.capabilities.Root
48
49 #Data Types
50 #Based on R2 Design-time Resource DM clean version v45
51 data_types:
52   tosca.datatypes.nfv.L2AddressData:
53     derived_from: tosca.datatypes.Root
54     properties: 
55       mac_address_assignment:
56         type: boolean
57         required: true
58
59   tosca.datatypes.nfv.injectFile:
60     derived_from: tosca.datatypes.Root
61     properties: 
62       source_path:
63         type: string
64         required: true
65       dest_path:
66         type: string
67         required: true
68
69   tosca.datatypes.nfv.L3AddressData:
70     derived_from: tosca.datatypes.Root
71     properties: 
72       ip_address_assignment:
73         type: boolean
74         required: true   
75       floating_ip_activated:
76         type: boolean
77         required: true
78       ip_address_type:
79         type: string
80         required: false
81         constraints:
82           - valid_values: [ipv4, ipv6]
83       number_of_ip_address:
84         type: integer
85         required: false
86       fixed_ip_address:
87         type: list
88         entry_schema:
89           type: string
90         required: false
91
92   tosca.datatypes.nfv.AddressData:
93     derived_from: tosca.datatypes.Root
94     properties: 
95       address_type:
96         type: string
97         required: true
98         constraints:
99           - valid_values: [mac_address, ip_address]    
100       l2_address_data:
101         type: tosca.datatypes.nfv.L2AddressData # empty in "GS NFV IFA011 V0.7.3"
102         required: false
103       l3_address_data:
104         type: tosca.datatypes.nfv.L3AddressData
105         required: false 
106   
107   tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
108     derived_from: tosca.datatypes.Root
109     properties: 
110       name:
111         type: string
112         required: false   
113       description:
114         type: string
115         required: false
116       support_mandatory:
117         type: boolean
118         required: true
119       #TODO HPA
120       network_interface_requirements:
121         type: map
122         entry_schema:
123           type: string
124         required: true
125       nic_io_requirements:
126         type: tosca.datatypes.nfv.LogicalNodeData
127         required: false
128   
129   tosca.datatypes.nfv.ConnectivityType:
130     derived_from: tosca.datatypes.Root
131     properties: 
132       layer_protocol:
133         type: string
134         required: true
135         constraints:
136           - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]  
137       flow_pattern:
138         type: string
139         required: false
140         constraints: # not defined in IFA011 v2.4.1 and SOL001 v.6.0
141           - valid_values: [Line, Tree, Mesh]
142   
143   tosca.datatypes.nfv.RequestedAdditionalCapability:
144     derived_from: tosca.datatypes.Root
145     properties:
146       #name:
147         # key of containing map
148       support_mandatory:
149         type: boolean
150         required: true
151       min_requested_additional_capability_version:
152         type: string
153         required: false
154       preferred_requested_additional_capability_version:
155         type: string
156         required: false
157       requested_additional_capability_name:
158         type: string
159         required: true
160       target_performance_parameters:
161         type: map
162         entry_schema:
163           type: string
164         required: true     
165   
166   tosca.datatypes.nfv.VirtualMemory:
167       derived_from: tosca.datatypes.Root
168       properties:
169         virtual_mem_size:
170           type: scalar-unit.size # Number
171           required: true
172         virtual_mem_oversubscription_policy:
173           type: string
174           required: false
175         #TODO HPA
176         vdu_memory_requirements:
177           type: map
178           entry_schema:
179            type: string
180           required: false
181         numa_enabled:
182           type: boolean
183           required: false
184   
185   tosca.datatypes.nfv.VirtualCpu:
186     derived_from: tosca.datatypes.Root
187     properties:
188       cpu_architecture:
189         type: string
190         required: false
191       num_virtual_cpu:
192         type: integer
193         required: true
194       virtual_cpu_clock:
195         type: scalar-unit.frequency
196         required: false
197       virtual_cpu_oversubscription_policy:
198         type: string
199         required: false
200       #TODO HPA
201       vdu_cpu_requirements:
202         type: map
203         entry_schema:
204            type: string
205         required: false
206       virtual_cpu_pinning:
207         type: tosca.datatypes.nfv.VirtualCpuPinning
208         required: false
209   
210   tosca.datatypes.nfv.VirtualCpuPinning:
211     derived_from: tosca.datatypes.Root
212     properties:
213       cpu_pinning_policy:
214         type: string # CpuPinningPolicy
215         constraints:
216           - valid_values: [ static, dynamic ]
217         required: false
218       cpu_pinning_map:
219         type: map
220         entry_schema:
221           type: string
222         required: false
223   
224   tosca.datatypes.nfv.VnfcConfigurableProperties:
225     derived_from: tosca.datatypes.Root
226     properties:
227       additional_vnfc_configurable_properties:
228         type: map
229         entry_schema:
230           type: string
231         required: false
232   
233   tosca.datatypes.nfv.VduProfile:
234       derived_from: tosca.datatypes.Root
235       properties:
236         min_number_of_instances:
237           type: integer
238           required: true
239         max_number_of_instances:
240           type: integer
241           required: true
242         #localAffinityOrAntiAffinityRule:  # not defined in SOL001 v.6.0
243         #  type: tosca.datatype.nfv.LocalAffinityOrAntiAffinityRule
244         #  required: true
245         #affinityOrAntiAffinityGroupId: # not defined in SOL001 v.6.0
246         #  type: string
247         #  required: true
248         watchdog: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
249           type: string
250           required: true
251         vmBootUpTimeOut: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
252           type: integer
253           required: false
254   
255    
256   tosca.datatypes.nfv.VlProfile:
257       derived_from: tosca.datatypes.Root
258       properties:
259         max_bit_rate_requirements:
260            type: tosca.datatypes.nfv.LinkBitRateRequirements
261            required: true
262         min_bit_rate_requirements:
263            type: tosca.datatypes.nfv.LinkBitRateRequirements
264            required: true
265         qos:
266            type: tosca.datatypes.nfv.Qos
267            required: false
268         initiationParameters: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
269            type: map
270            entry_schema:
271              type: string
272            required: false
273         cidr: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
274            type: string
275            required: false
276         networkName:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
277            type: string
278            required: false
279         startIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
280            type: string
281            required: false
282         endIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
283            type: string
284            required: false
285         gatewayIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
286            type: string
287            required: false
288         segmentationId:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
289            type: integer
290            required: false
291         physicalNetwork:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
292            type: string
293            required: false
294         networkType:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
295            type: string
296            required: false
297            constraints:
298              - valid_values: [VLAN, VXLAN]
299         dhcpEnabled:  # not defined in IFA011 v2.4.1 and SOL001 v.6.0
300            type: boolean
301            required: false
302         vlanTransparent:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
303            type: boolean
304            required: false
305   
306   tosca.datatypes.nfv.InstantiationLevel:
307       derived_from: tosca.datatypes.Root
308       properties:
309         description:
310           type: string
311           required: true
312         vdu_levels:
313           type: map # key: vduId
314           required: true
315           entry_schema:
316             type: tosca.datatypes.nfv.VduLevel
317         scale_info:
318           type: map # key: aspectId
319           required: false
320           entry_schema:
321             type: tosca.datatypes.nfv.ScaleInfo
322   
323   tosca.datatypes.nfv.VduLevel:
324       derived_from: tosca.datatypes.Root
325       properties:
326         number_of_instances:
327           type: integer
328           required: true
329   
330   tosca.datatypes.nfv.VnfLcmOperationsConfiguration: 
331     derived_from: tosca.datatypes.Root 
332     properties: 
333       instantiate: 
334         type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration 
335       scale:
336         type: tosca.datatypes.nfv.VnfScaleOperationConfiguration 
337       scale_to_level: 
338         type: tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration 
339       heal: 
340         type: tosca.datatypes.nfv.VnfHealOperationConfiguration
341       terminate:
342         type: tosca.datatypes.nfv.VnfTerminateOperationConfiguration
343       operate: 
344         type: tosca.datatypes.nfv.VnfOperateOperationConfiguration
345   
346   tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:
347       derived_from: tosca.datatypes.Root
348       #properties:
349         #parameters:
350             #modeled as part of operation parameter list
351   
352   tosca.datatypes.nfv.VnfScaleOperationConfiguration:
353       derived_from: tosca.datatypes.Root
354       properties:
355         #parameters:
356            #modeled as part of the operation parameter list
357         scaling_by_more_than_one_step_supported:
358            type: boolean
359   
360   tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration:
361       derived_from: tosca.datatypes.Root
362       properties:
363         #parameters:
364            #modeled as part of the operation parameter list
365         arbitrary_target_levels_supported:
366            type: boolean
367   
368   tosca.datatypes.nfv.VnfHealOperationConfiguration:
369       derived_from: tosca.datatypes.Root
370       properties:
371         #parameters:
372            #modeled as part of the operation parameter list
373         causes:
374            type: list
375            entry_schema:
376              type: string
377   
378   tosca.datatypes.nfv.VnfTerminateOperationConfiguration:
379       derived_from: tosca.datatypes.Root
380       properties:
381         min_graceful_termination_timeout:
382            type: integer
383         max_recommended_graceful_termination_timeout:
384            type: integer
385   
386   tosca.datatypes.nfv.VnfOperateOperationConfiguration:
387     derived_from: tosca.datatypes.Root
388     properties:
389       min_graceful_termination_timeout:
390            type: integer
391       max_recommended_graceful_termination_timeout:
392            type: integer
393   
394   tosca.datatypes.nfv.ScaleInfo:
395     derived_from: tosca.datatypes.Root
396     properties:
397       scaleLevel:
398            type: integer
399            required: true
400   
401   tosca.datatypes.nfv.ScaleAspect:
402     derived_from: tosca.datatypes.Root
403     properties:
404       name:
405          type: string
406          required: true
407       description:
408          type: string
409          required: true
410       associated_group:
411          type: string #Identifier
412          required: false
413       max_scale_level:
414          type: integer #PositiveInteger
415          required: true
416   
417   tosca.datatypes.nfv.LinkBitRateRequirements:
418     derived_from: tosca.datatypes.Root
419     properties:
420       root:
421          type: integer
422          required: true
423       leaf:
424          type: integer
425          required: true
426   
427   tosca.datatypes.nfv.Qos:
428     derived_from: tosca.datatypes.Root
429     properties:
430       latency:
431          type: integer #Number [ms]
432          required: true
433       packet_delay_variation:
434          type: integer #Number [ms]
435          required: true
436       packet_loss_ratio:
437          type: float
438          constraints:
439            - in_range: [ 0.0, 1.0 ]
440          required: false
441   
442   tosca.datatypes.nfv.CpProtocolData:
443     derived_from: tosca.datatypes.Root
444     properties:
445       asscociated_layer_protocol:
446         type: string
447         constraints:
448           - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
449         required: true
450       address_data:
451         type: tosca.datatypes.nfv.AddressData
452         required: false
453   
454   tosca.datatypes.nfv.VnfConfigurableProperties:
455     derived_from: tosca.datatypes.Root
456     properties:
457       is_autoscale_enabled:
458         type: boolean
459         required: false
460       is_autoheal_enabled:
461         type: boolean
462         required: false
463       additional_configurable_properties:
464         type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties
465         required: false
466   
467   tosca.datatypes.nfv.VnfAdditionalConfigurableProperties:
468     derived_from: tosca.datatypes.Root
469   
470   tosca.datatypes.nfv.VnfInfoModifiableAttributes:
471     derived_from: tosca.datatypes.Root
472     properties:
473       extensions:
474         type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions
475         required: false
476       metadata:
477         type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata
478         required: false
479   
480   tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions:
481     derived_from: tosca.datatypes.Root
482   
483   tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata:
484     derived_from: tosca.datatypes.Root
485   
486   tosca.datatypes.nfv.LogicalNodeData:
487     derived_from: tosca.datatypes.Root
488     properties:
489       #TODO HPA
490       logical_node_requirements:
491         type: map # not defined in SOL001 v.6.0
492         entry_schema:
493           type: string
494         required: false
495
496 #Interface Types
497 #Based on R2 Design-time Resource DM clean version v10
498 interface_types:
499   tosca.interfaces.nfv.vnf.lifecycle.Nfv:
500     derived_from: tosca.interfaces.Root
501     instantiate:
502       description: Invoked upon receipt of an Instantiate VNF request
503     instantiate_start:
504       description: Invoked before instantiate
505     instantiate_end:
506       description: Invoked after instantiate
507     terminate:
508       description: Invoked upon receipt Terminate VNF request
509     terminate_start:
510       description: Invoked before terminate
511     terminate_end:
512       description: Invoked after terminate
513     modify_information:
514       description: Invoked upon receipt of a Modify VNF Information request
515     modify_information_start:
516       description: Invoked before modify_information
517     modify_information_end:
518       description: Invoked after modify_information
519     change_flavour:
520       description: Invoked upon receipt of a Change VNF Flavour request
521     change_flavour_start:
522       description: Invoked before change_flavour
523     change_flavour_end:
524       description: Invoked after change_flavour
525     change_external_connectivity:
526       description: Invoked upon receipt of a Change External VNF Connectivity request
527     change_external_connectivity_start:
528       description: Invoked before change_external_connectivity
529     change_external_connectivity_end:
530       description: Invoked after change_external_connectivity
531     operate:
532       description: Invoked upon receipt of an Operate VNF request
533     operate_start:
534       description: Invoked before operate
535     operate_end:
536       description: Invoked after operate
537     heal:
538       description: Invoked upon receipt of a Heal VNF request
539     heal_start:
540       description: Invoked before heal
541     heal_end:
542     description: Invoked after heal
543     scale:
544       description: Invoked upon receipt of a Scale VNF request
545     scale_start:
546       description: Invoked before scale
547     scale_end:
548       description: Invoked after scale 
549     scale_to_level:
550       description: Invoked upon receipt of a Scale VNF to Level request
551     scale_to_level_start:
552       description: Invoked before scale_to_level
553     scale_to_level_end:
554       description: Invoked after scale_to_level
555   #  indicator_changed:
556   #    description: On receiving a VNF indicator value change notification
557
558 #Node Types
559 #Based on R2 Design-time Resource DM clean version v36
560 node_types:
561   tosca.nodes.nfv.Vdu.Compute:
562     derived_from: tosca.nodes.Root
563     properties:
564       name:
565         type: string
566         required: true
567       description:
568         type: string
569         required: true
570       boot_order:
571         type: list # explicit index (boot index) not necessary, contrary to IFA011
572         entry_schema:
573           type: string
574         required: false
575       nfvi_constraints:
576         type: list
577         entry_schema:
578           type: string
579         required: false
580       configurable_properties:
581         type: map
582         entry_schema:
583            type: tosca.datatypes.nfv.VnfcConfigurableProperties
584         required: true 
585       vdu_profile:
586         type: tosca.datatypes.nfv.VduProfile
587         required: true
588       inject_files: #Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
589         type: list
590         entry_schema:
591           type: tosca.datatypes.nfv.injectFile
592         required: false
593       meta_data: #metadata attached to the VM or container
594         type: map
595         entry_schema:
596           type: string
597         required: false
598       user_data: #cloudinit userdata script support
599         type: string
600         required: false
601     #attributes: NOT DEFINED IN ONAP IM and SOL001
602       #private_address:
603       #  status: deprecated
604       #public_address:
605       #  status: deprecated
606       #networks:
607       #  status: deprecated
608       #ports:
609       #  status: deprecated
610     capabilities:
611       virtual_compute:
612         type: tosca.capabilities.nfv.VirtualCompute
613       virtual_binding:
614         type: tosca.capabilities.nfv.VirtualBindable
615         occurrences: [1, UNBOUNDED]
616       monitoring_parameter:
617         type: tosca.capabilities.nfv.Metric
618         occurrences: [0, UNBOUNDED]
619     requirements:
620       - virtual_storage:
621           capability: tosca.capabilities.nfv.VirtualStorage
622           relationship: tosca.relationships.nfv.Vdu.AttachedTo
623           node: tosca.nodes.nfv.Vdu.VirtualStorage
624           occurrences: [ 0, UNBOUNDED ]
625     #artifacts:
626     #  - sw_image:
627     #      file:
628     #      type: tosca.artifacts.nfv.SwImage
629   
630   tosca.nodes.nfv.Vdu.VirtualStorage:
631     derived_from: tosca.nodes.Root
632     properties:
633       #id:
634         # node name
635       type_of_storage:
636         type: string
637         constraints:
638           - valid_values: [volume, object, root, block]
639         required: true
640       size_of_storage:
641         type: scalar-unit.size
642         required: true
643       #TODO HPA
644       vdu_storage_requirements:
645         type: map
646         entry_schema:
647           type: string
648         required: false
649       rdma_enabled:
650         type: boolean
651         required: false
652     capabilities:
653       virtual_storage:
654         type: tosca.capabilities.nfv.VirtualStorage
655     #artifacts:
656     #  - sw_image:
657     #     file:
658     #     type: tosca.artifacts.Deployment.Image
659   
660   tosca.nodes.nfv.Cp:
661     derived_from: tosca.nodes.Root
662     properties:
663       layer_protocol:
664         type: list
665         entry_schema:
666           constraints:
667             - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
668           type: string
669         required: true
670       role: #Name in ETSI NFV IFA011 v0.7.3 cpRole
671         type: string
672         constraints:
673           - valid_values: [ root, leaf ]
674         required: false
675       description:
676         type: string
677         required: false
678       protocol_data:
679         type: list
680         entry_schema:
681           type: tosca.datatypes.nfv.CpProtocolData
682         required: true
683       trunk_mode:
684         type: boolean
685         required: true
686       allowedAddressData: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0
687         type: tosca.datatypes.nfv.AddressData
688         required: false
689   
690   tosca.nodes.nfv.VduCp:
691     derived_from: tosca.nodes.nfv.Cp
692     properties:
693       bitrate_requirement:
694         type: integer
695         required: false
696       vnic_name: #  Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0
697         type: string
698         required: false
699       vnic_order: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
700         type: integer
701         required: false
702       vnic_type: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0
703         type: string
704         constraints:
705             - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder]
706         required: false
707       virtual_network_interface_requirements:
708         type: list
709         entry_schema:
710           type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements
711         required: false
712       #order:
713       #  type: integer
714       #  required: false
715       #  constraints:
716       #    - greater_or_equal: 0
717     requirements:
718       - virtual_link:
719           capability: tosca.capabilities.nfv.VirtualLinkable
720           relationship: tosca.relationships.nfv.VirtualLinksTo
721           node: tosca.nodes.nfv.VnfVirtualLink   
722       - virtual_binding:
723           capability: tosca.capabilities.nfv.VirtualBindable
724           relationship: tosca.relationships.nfv.VirtualBindsTo
725           node: tosca.nodes.nfv.Vdu.Compute
726   
727   tosca.nodes.nfv.VnfVirtualLink:
728     derived_from: tosca.nodes.Root
729     properties:
730       connectivity_type:
731         type: tosca.datatypes.nfv.ConnectivityType
732         required: true
733       description:
734         type: string
735         required: false
736       test_access:
737         type: list
738         entry_schema:
739           type: string
740         required: false
741       vl_profile:
742         type: tosca.datatypes.nfv.VlProfile
743         required: true
744     capabilities:
745       monitoring_parameter:
746         type: tosca.capabilities.nfv.Metric
747         occurrences: [0, UNBOUNDED]
748       virtual_linkable:
749         type: tosca.capabilities.nfv.VirtualLinkable
750   
751   tosca.nodes.nfv.VNF:
752     derived_from: tosca.nodes.Root
753     properties:
754       descriptor_id: # instead of vnfd_id
755         type: string # GUID
756         required: true
757       descriptor_version: # instead of vnfd_version
758         type: string
759         required: true
760       provider: # instead of vnf_provider
761         type: string
762         required: true
763       product_name: # instead of vnf_product_name
764         type: string
765         required: true
766       software_version: # instead of vnf_software_version
767         type: string
768         required: true
769       product_info_name: # instead of vnf_product_info_name
770         type: string
771         required: false
772       product_info_description: # instead of vnf_product_info_description
773         type: string
774         required: false
775       vnfm_info:
776         type: list
777         entry_schema:
778           type: string
779         required: true
780       localization_languages:
781         type: list
782         entry_schema:
783           type: string
784         required: false
785       default_localization_language:
786         type: string
787         required: false
788       configurable_properties:
789         type: tosca.datatypes.nfv.VnfConfigurableProperties
790         required: false
791       modifiable_attributes:
792         type: tosca.datatypes.nfv.VnfInfoModifiableAttributes
793         required: false  # true in IFA011, but all of members are false
794       flavour_id:
795         type: string
796         required: true
797       flavour_description:
798         type: string
799         required: true
800     #capabilities:
801       # monitoring_parameter:
802         # modelled as ad hoc capabilities in the VNF node template
803     requirements:
804       - virtual_link:
805           capability: tosca.capabilities.nfv.VirtualLinkable
806           relationship: tosca.relationships.nfv.VirtualLinksTo
807           node: tosca.nodes.nfv.VnfVirtualLink
808           occurrences: [ 0, UNBOUNDED ]
809     interfaces:
810       Nfv:
811         type: tosca.interfaces.nfv.vnf.lifecycle.Nfv
812
813 #Relationship Types
814 #Based on R2 Design-time Resource DM clean version v4
815 relationship_types:
816   tosca.relationships.nfv.VirtualBindsTo:
817     derived_from: tosca.relationships.DependsOn
818     valid_target_types: [ tosca.capabilities.nfv.VirtualBindable]
819   
820   tosca.relationships.nfv.VirtualLinksTo:
821     derived_from: tosca.relationships.DependsOn
822     valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable]
823
824   tosca.relationships.nfv.Vdu.AttachedTo:
825     derived_from: tosca.relationships.DependsOn
826     valid_target_types: [ tosca.capabilities.nfv.VirtualStorage]