Backend support for operation milestones with activity inputs
[sdc.git] / catalog-be / src / main / resources / import / tosca / data-types / dataTypes.yml
index ba7a7a0..24bed4d 100644 (file)
@@ -7,12 +7,18 @@ integer:
 string:
   derived_from: tosca.datatypes.Root
 
+timestamp:
+  derived_from: tosca.datatypes.Root
+
 boolean:
   derived_from: tosca.datatypes.Root
 
 float:
   derived_from: tosca.datatypes.Root
 
+range:
+  derived_from: tosca.datatypes.Root
+
 list:
   derived_from: tosca.datatypes.Root
 
@@ -34,17 +40,19 @@ scalar-unit.time:
 scalar-unit.frequency:
   derived_from: scalar-unit
 
-  
-tosca.datatypes.Credential: 
+scalar-unit.bitrate:
+  derived_from: scalar-unit
+
+tosca.datatypes.Credential:
   derived_from: tosca.datatypes.Root
-  properties: 
-    protocol: 
+  properties:
+    protocol:
       type: string
       required: false
-    token_type: 
+    token_type:
       type: string
       default: password
-    token: 
+    token:
       type: string
     keys:
       type: map
@@ -55,38 +63,56 @@ tosca.datatypes.Credential:
       type: string
       required: false
 
-tosca.datatypes.TimeInterval: 
+org.openecomp.datatypes.PortMirroringConnectionPointDescription:
+  derived_from: tosca.datatypes.Root
+  properties:
+    nf_naming_code:
+      type: string
+    nfc_naming_code:
+      type: string
+    network_role:
+      type: string
+    pps_capacity:
+      type: string
+    nf_type:
+      type: string
+      description: deprecated
+    nfc_type:
+      type: string
+      description: deprecated
+
+tosca.datatypes.TimeInterval:
   derived_from: tosca.datatypes.Root
   properties:
-    start_time: 
+    start_time:
       type: timestamp
       required: true
-    end_time: 
+    end_time:
       type: timestamp
       required: true
 
 tosca.datatypes.network.NetworkInfo:
   derived_from: tosca.datatypes.Root
   properties:
-    network_name: 
+    network_name:
       type: string
-    network_id: 
+    network_id:
       type: string
     addresses:
       type: list
       entry_schema:
         type: string
 
-tosca.datatypes.network.PortInfo: 
+tosca.datatypes.network.PortInfo:
   derived_from: tosca.datatypes.Root
-  properties:  
-    port_name: 
+  properties:
+    port_name:
       type: string
-    port_id: 
+    port_id:
       type: string
-    network_id: 
+    network_id:
       type: string
-    mac_address: 
+    mac_address:
       type: string
     addresses:
       type: list
@@ -95,22 +121,22 @@ tosca.datatypes.network.PortInfo:
 
 tosca.datatypes.network.PortDef:
   derived_from: integer
-  constraints: 
+  constraints:
     - in_range: [ 1, 65535 ]
 
-tosca.datatypes.network.PortSpec: 
+tosca.datatypes.network.PortSpec:
   derived_from: tosca.datatypes.Root
-  properties:  
-    protocol: 
+  properties:
+    protocol:
       type: string
       required: true
       default: tcp
       constraints:
         - valid_values: [ udp, tcp, igmp ]
-    target:  
+    target:
       type: tosca.datatypes.network.PortDef
     target_range:
-      type: range 
+      type: range
       constraints:
         - in_range: [ 1, 65535 ]
     source:
@@ -130,12 +156,12 @@ org.openecomp.datatypes.heat.network.AddressPair:
       type: string
       description: MAC address
       required: false
-      status: SUPPORTED
+      status: supported
     ip_address:
       type: string
       description: IP address
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.network.subnet.HostRoute:
   derived_from: tosca.datatypes.Root
@@ -145,13 +171,13 @@ org.openecomp.datatypes.heat.network.subnet.HostRoute:
       type: string
       description: The destination for static route
       required: false
-      status: SUPPORTED
+      status: supported
     nexthop:
       type: string
       description: The next hop for the destination
       required: false
-      status: SUPPORTED
-      
+      status: supported
+
 org.openecomp.datatypes.heat.network.AllocationPool:
   derived_from: tosca.datatypes.Root
   description: The start and end addresses for the allocation pool
@@ -160,12 +186,12 @@ org.openecomp.datatypes.heat.network.AllocationPool:
       type: string
       description: Start address for the allocation pool
       required: false
-      status: SUPPORTED
+      status: supported
     end:
       type: string
       description: End address for the allocation pool
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.network.neutron.Subnet:
   derived_from: tosca.datatypes.Root
@@ -175,18 +201,18 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
       type: string
       description: The ID of the tenant who owns the network
       required: false
-      status: SUPPORTED
+      status: supported
     enable_dhcp:
       type: boolean
       description: Set to true if DHCP is enabled and false if DHCP is disabled
       required: false
       default: true
-      status: SUPPORTED
+      status: supported
     ipv6_address_mode:
       type: string
       description: IPv6 address mode
       required: false
-      status: SUPPORTED
+      status: supported
       constraints:
       - valid_values:
         - dhcpv6-stateful
@@ -196,7 +222,7 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
       type: string
       description: IPv6 RA (Router Advertisement) mode
       required: false
-      status: SUPPORTED
+      status: supported
       constraints:
       - valid_values:
         - dhcpv6-stateful
@@ -206,37 +232,33 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
       type: map
       description: Extra parameters to include in the request
       required: false
-      default: {
-        }
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: string
     allocation_pools:
        type: list
        description: The start and end addresses for the allocation pools
        required: false
-       status: SUPPORTED
+       status: supported
        entry_schema:
          type: org.openecomp.datatypes.heat.network.AllocationPool
     subnetpool:
       type: string
       description: The name or ID of the subnet pool
       required: false
-      status: SUPPORTED
+      status: supported
     dns_nameservers:
       type: list
       description: A specified set of DNS name servers to be used
       required: false
-      default: [
-        ]
-      status: SUPPORTED
+      status: supported
       entry_schema:
-        type: string     
+        type: string
     host_routes:
       type: list
       description: The gateway IP address
       required: false
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: org.openecomp.datatypes.heat.network.subnet.HostRoute
     ip_version:
@@ -244,33 +266,33 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
       description: The gateway IP address
       required: false
       default: 4
-      status: SUPPORTED
+      status: supported
       constraints:
       - valid_values:
-        - '4'
-        - '6'
+        - 4
+        - 6
     name:
       type: string
       description: The name of the subnet
       required: false
-      status: SUPPORTED
+      status: supported
     prefixlen:
       type: integer
       description: Prefix length for subnet allocation from subnet pool
       required: false
-      status: SUPPORTED
+      status: supported
       constraints:
       - greater_or_equal: 0
     cidr:
       type: string
       description: The CIDR
       required: false
-      status: SUPPORTED
+      status: supported
     gateway_ip:
       type: string
       description: The gateway IP address
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
   derived_from: tosca.datatypes.Root
@@ -280,35 +302,35 @@ org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
       type: boolean
       description: Flag to enable/disable port security on the port
       required: false
-      status: SUPPORTED
+      status: supported
     mac_address:
       type: string
       description: MAC address to give to this port
       required: false
-      status: SUPPORTED
+      status: supported
     admin_state_up:
       type: boolean
       description: The administrative state of this port
       required: false
       default: true
-      status: SUPPORTED
+      status: supported
     qos_policy:
       type: string
       description: The name or ID of QoS policy to attach to this port
       required: false
-      status: SUPPORTED
+      status: supported
     allowed_address_pairs:
       type: list
       description: Additional MAC/IP address pairs allowed to pass through the port
       required: false
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: org.openecomp.datatypes.heat.network.AddressPair
     binding:vnic_type:
       type: string
       description: The vnic type to be bound on the neutron port
       required: false
-      status: SUPPORTED
+      status: supported
       constraints:
       - valid_values:
         - macvtap
@@ -318,9 +340,7 @@ org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
       type: map
       description: Extra parameters to include in the request
       required: false
-      default: {
-        }
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: string
 
@@ -332,7 +352,7 @@ org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
       type: string
       description: Port id
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.neutron.port.FixedIps:
   derived_from: tosca.datatypes.Root
@@ -342,12 +362,17 @@ org.openecomp.datatypes.heat.neutron.port.FixedIps:
       type: string
       description: Subnet in which to allocate the IP address for this port
       required: false
-      status: SUPPORTED
+      status: supported
     ip_address:
       type: string
       description: IP address desired in the subnet for this port
       required: false
-      status: SUPPORTED
+      status: supported
+    subnet_id:
+      type: string
+      description: Subnet in which to allocate the IP address for this port
+      required: false
+      status: supported
 
 org.openecomp.datatypes.heat.FileInfo:
   derived_from: tosca.datatypes.Root
@@ -357,12 +382,12 @@ org.openecomp.datatypes.heat.FileInfo:
       type: string
       description: The required URI string (relative or absolute) which can be used to locate the file
       required: true
-      status: SUPPORTED
+      status: supported
     file_type:
       type: string
       description: The type of the file
       required: true
-      status: SUPPORTED
+      status: supported
       constraints:
       - valid_values:
         - base
@@ -378,12 +403,12 @@ org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
         type: string
         description: Start port
         required: false
-        status: SUPPORTED
+        status: supported
       end_port:
         type: string
         description: End port
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrail.network.rule.Rule:
     derived_from: tosca.datatypes.Root
@@ -393,45 +418,45 @@ org.openecomp.datatypes.heat.contrail.network.rule.Rule:
         type: list
         description: Source ports
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
       protocol:
         type: string
         description: Protocol
         required: false
-        status: SUPPORTED
+        status: supported
       dst_addresses:
         type: list
         description: Destination addresses
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
       apply_service:
         type: string
         description: Service to apply
         required: false
-        status: SUPPORTED
+        status: supported
       dst_ports:
         type: list
         description: Destination ports
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
       src_addresses:
         type: list
         description: Source addresses
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
       direction:
         type: string
         description: Direction
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
     derived_from: tosca.datatypes.Root
@@ -441,7 +466,7 @@ org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
         type: list
         description: Contrail network rule
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
 
@@ -453,7 +478,7 @@ org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
         type: string
         description: Virtual network
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
     derived_from: tosca.datatypes.Root
@@ -463,12 +488,12 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
         type: string
         description: The remote group ID to be associated with this security group rule
         required: false
-        status: SUPPORTED
+        status: supported
       protocol:
         type: string
         description: The protocol that is matched by the security group rule
         required: false
-        status: SUPPORTED
+        status: supported
         constraints:
         - valid_values:
           - tcp
@@ -479,17 +504,16 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
         description: Ethertype of the traffic
         required: false
         default: IPv4
-        status: SUPPORTED
+        status: supported
         constraints:
         - valid_values:
           - IPv4
           - IPv6
       port_range_max:
         type: integer
-        description: 'The maximum port number in the range that is matched by the
-          security group rule. '
+        description: 'The maximum port number in the range that is matched by the security group rule. '
         required: false
-        status: SUPPORTED
+        status: supported
         constraints:
         - in_range:
           - 0
@@ -498,13 +522,13 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
         type: string
         description: The remote IP prefix (CIDR) to be associated with this security group rule
         required: false
-        status: SUPPORTED
+        status: supported
       remote_mode:
         type: string
         description: Whether to specify a remote group or a remote IP prefix
         required: false
         default: remote_ip_prefix
-        status: SUPPORTED
+        status: supported
         constraints:
         - valid_values:
           - remote_ip_prefix
@@ -514,7 +538,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
         description: The direction in which the security group rule is applied
         required: false
         default: ingress
-        status: SUPPORTED
+        status: supported
         constraints:
         - valid_values:
           - egress
@@ -523,7 +547,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
         type: integer
         description: The minimum port number in the range that is matched by the security group rule.
         required: false
-        status: SUPPORTED
+        status: supported
         constraints:
         - in_range:
           - 0
@@ -537,33 +561,33 @@ org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
         type: string
         description: Substitute Service Template
         required: true
-        status: SUPPORTED
+        status: supported
       index_value:
         type: integer
         description: Index value of the substitution service template runtime instance
         required: false
         default: 0
-        status: SUPPORTED
+        status: supported
         constraints:
         - greater_or_equal: 0
       count:
         type: string
         description: Count
         required: false
-        default: 1
-        status: SUPPORTED
+        default: "1"
+        status: supported
       scaling_enabled:
         type: boolean
         description: Indicates whether service scaling is enabled
         required: false
         default: true
-        status: SUPPORTED
+        status: supported
       mandatory:
         type: boolean
         description: Mandatory
         required: false
         default: true
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
     derived_from: tosca.datatypes.Root
@@ -573,12 +597,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
         type: integer
         description: Network Policy ref data sequence Major
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_refs_data_sequence_minor:
         type: integer
         description: Network Policy ref data sequence Minor
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
     derived_from: tosca.datatypes.Root
@@ -588,7 +612,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
         type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
         description: Network Policy ref data sequence
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
     derived_from: tosca.datatypes.Root
@@ -598,12 +622,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
         type: string
         description: Network ipam refs data ipam subnets ip prefix len
         required: false
-        status: SUPPORTED
+        status: supported
       network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
         type: string
         description: Network ipam refs data ipam subnets ip prefix
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
     derived_from: tosca.datatypes.Root
@@ -613,12 +637,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
         type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
         description: Network ipam refs data ipam subnets
         required: false
-        status: SUPPORTED
+        status: supported
       network_ipam_refs_data_ipam_subnets_addr_from_start:
         type: string
         description: Network ipam refs data ipam subnets addr from start
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
     derived_from: tosca.datatypes.Root
@@ -628,7 +652,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
         type: list
         description: Network ipam refs data ipam subnets
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
 
@@ -640,7 +664,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
         type: string
         description: Source addresses Virtual network
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
     derived_from: tosca.datatypes.Root
@@ -650,7 +674,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
         type: string
         description: Destination addresses Virtual network
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
     derived_from: tosca.datatypes.Root
@@ -660,12 +684,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
         type: string
         description: Start port
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_entries_policy_rule_dst_ports_end_port:
         type: string
         description: End port
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
     derived_from: tosca.datatypes.Root
@@ -675,12 +699,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
         type: string
         description: Start port
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_entries_policy_rule_src_ports_end_port:
         type: string
         description: End port
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
     derived_from: tosca.datatypes.Root
@@ -690,12 +714,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
         type: string
         description: Simple Action
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_entries_policy_rule_action_list_apply_service:
         type: list
         description: Apply Service
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: string
 
@@ -707,45 +731,45 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
         type: list
         description: Destination addresses
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork
       network_policy_entries_policy_rule_dst_ports:
         type: list
         description: Destination ports
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs
       network_policy_entries_policy_rule_protocol:
         type: string
         description: Protocol
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_entries_policy_rule_src_addresses:
         type: list
         description: Source addresses
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork
       network_policy_entries_policy_rule_direction:
         type: string
         description: Direction
         required: false
-        status: SUPPORTED
+        status: supported
       network_policy_entries_policy_rule_src_ports:
         type: list
         description: Source ports
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs
       network_policy_entries_policy_rule_action_list:
         type: org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList
         description: Action list
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
     derived_from: tosca.datatypes.Root
@@ -755,7 +779,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
         type: list
         description: Contrail network rule
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
 
@@ -767,17 +791,17 @@ org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
         type: string
         description: Route prefix
         required: false
-        status: SUPPORTED
+        status: supported
       next_hop:
         type: string
         description: Next hop
         required: false
-        status: SUPPORTED
+        status: supported
       next_hop_type:
         type: string
         description: Next hop type
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.network.contrail.AddressPair:
     derived_from: tosca.datatypes.Root
@@ -787,7 +811,7 @@ org.openecomp.datatypes.heat.network.contrail.AddressPair:
         type: string
         description: Address mode active-active or active-standy
         required: false
-        status: SUPPORTED
+        status: supported
         constraints:
         - valid_values:
           - active-active
@@ -796,12 +820,12 @@ org.openecomp.datatypes.heat.network.contrail.AddressPair:
         type: string
         description: IP address prefix
         required: false
-        status: SUPPORTED
+        status: supported
       mac_address:
         type: string
         description: Mac address
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.network.contrail.InterfaceData:
     derived_from: tosca.datatypes.Root
@@ -811,26 +835,26 @@ org.openecomp.datatypes.heat.network.contrail.InterfaceData:
         type: list
         description: An ordered list of static routes to be added to this interface
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
       virtual_network:
         type: string
         description: Virtual Network for this interface
         required: true
-        status: SUPPORTED
+        status: supported
       allowed_address_pairs:
         type: list
         description: List of allowed address pair for this interface
         required: false
-        status: SUPPORTED
+        status: supported
         entry_schema:
           type: org.openecomp.datatypes.heat.network.contrail.AddressPair
       ip_address:
         type: string
         description: IP for this interface
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
     derived_from: tosca.datatypes.Root
@@ -840,7 +864,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
         type: string
         description: Service Interface Type.
         required: false
-        status: SUPPORTED
+        status: supported
 
 org.openecomp.datatypes.Root:
   derived_from: tosca.datatypes.Root
@@ -849,9 +873,8 @@ org.openecomp.datatypes.Root:
   properties:
     supplemental_data:
       type: map
-      required: false
       entry_schema:
-        description: > 
+        description: >
            A placeholder for missing properties that would be included in future ecomp model versions.
            fromat <key>:<value>
         type: string
@@ -868,15 +891,15 @@ org.openecomp.datatypes.AssignmentRequirements:
     count:
       description: number of assignments required
       type: integer
-      required: false    
-      
+      required: false
+
 org.openecomp.datatypes.network.SubnetAssignments:
   derived_from: org.openecomp.datatypes.Root
   properties:
     ip_network_address_plan:
       type: string
       required: false
-      description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network 
+      description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
     dhcp_enabled:
       type: boolean
       required: false
@@ -890,7 +913,7 @@ org.openecomp.datatypes.network.SubnetAssignments:
     cidr_mask:
       type: integer
       required: true
-      description: The default subnet CIDR mask 
+      description: The default subnet CIDR mask
     min_subnets_count:
       type: integer
       default: 1
@@ -941,6 +964,17 @@ org.openecomp.datatypes.network.NetworkAssignments:
       type: org.openecomp.datatypes.network.IPv6SubnetAssignments
       required: true
       description: IPv6 defualt subnet assignments
+    related_networks:
+      type: list
+      required: false
+      description: Related Networks List.
+      entry_schema:
+        type: org.openecomp.datatypes.network.RelatedNetworksAssignments
+    is_trunked:
+      type: boolean
+      required: true
+      description: \"true\" indicates that network is trunked
+      default: false
 
 org.openecomp.datatypes.network.ProviderNetwork:
   derived_from: org.openecomp.datatypes.Root
@@ -948,12 +982,12 @@ org.openecomp.datatypes.network.ProviderNetwork:
     is_provider_network:
       type: boolean
       required: true
-      description: \"true\" indicates that this a Neutron provider type of network 
+      description: \"true\" indicates that this a Neutron provider type of network
     physical_network_name:
       type: string
       required: false
       constraints:
-        - valid_values: ["Physnet41", "Physnet42", "Physnet43", "Physnet44", "Physnet21", "Physnet22"]
+        - valid_values: ["Physnet41", "Physnet42", "Physnet43", "Physnet44", "Physnet21", "Physnet22", "sriovnet1", "sriovnet2", "oam"]
       description: >
         Identifies the NUMA processor cluster to which this physical network interface belongs.
         NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. \"01\" = NUMA 0, \"11\" = NUMA 1)
@@ -1066,6 +1100,424 @@ org.openecomp.datatypes.network.MacAssignments:
       required: true
       description: identifies the number of MAC addresses to assign to the CP from the plan
 
+org.openecomp.datatypes.CSProperties:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+    sNSSAI:
+      type: string
+      required: true
+      description: sNSSAI
+    maxNumberofUEs:
+      type: integer
+      required: true
+      default: 1000
+      description: maxNumberofUEs
+    latency:
+      type: integer
+      required: true
+      default: 30
+      description: latency
+    expDataRateDL:
+      type: integer
+      required: false
+      description: expDataRateDL
+    expDataRateUL:
+      type: integer
+      required: false
+      description: expDataRateUL
+    coverageAreaList:
+      type: string
+      required: true
+      description: coverageAreaList
+    uEMobilityLevel:
+      type: string
+      constraints:
+        - valid_values: ["stationary", "nomadic","restricted mobility","fully mobility"]
+      required: false
+      description: uEMobilityLevel
+    useInterval:
+      type: string
+      required: true
+      description: useInterval
+    resourceSharingLevel:
+      type: string
+      required: true
+      default: "Shared"
+      constraints:
+        - valid_values: ["Shared", "Non-shared"]
+      description: resourceSharingLevel
+
+org.openecomp.datatypes.NSCapabilities:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+    pLMNIdList:
+      type: string
+      required: true
+      description: pLMNIdList
+    maxNumberofUEs:
+      type: integer
+      required: true
+      default: 1000
+      description: maxNumberofUEs
+    latency:
+      type: integer
+      required: true
+      default: 30
+      description: latency
+    uEMobilityLevel:
+      type: string
+      constraints:
+        - valid_values: ["stationary", "nomadic","restricted mobility","fully mobility"]
+      required: false
+      description: uEMobilityLevel
+    resourceSharingLevel:
+      type: string
+      required: true
+      default: "Shared"
+      constraints:
+        - valid_values: ["Shared", "Non-shared"]
+      description: resourceSharingLevel
+    sST:
+      type: string
+      required: true
+      default: "eMBB"
+      constraints:
+        - valid_values: ["eMBB", "uRLLC", "mIot"]
+      description: sST
+    availability:
+      type: float
+      required: false
+      description: availability
+    dLThptPerUE:
+      type: integer
+      required: false
+      description: dLThptPerUE
+    uLThptPerUE:
+      type: integer
+      required: false
+      description: uLThptPerUE
+    maxPktSize:
+      type: integer
+      required: false
+      description: maxPktSize
+    termDensity:
+      type: integer
+      required: false
+      description: termDensity
+    activityFactor:
+      type: integer
+      required: false
+      description: activityFactor
+    jitter:
+      type: integer
+      required: false
+      description: jitter
+    survivalTime:
+      type: string
+      required: false
+      description: survivalTime
+    reliability:
+      type: string
+      required: false
+      description: reliability
+    dLThptPerSlice:
+      type: integer
+      required: false
+      description: dLThptPerSlice
+    uLThptPerSlice:
+      type: integer
+      required: false
+      description: uLThptPerSlice
+    maxNumberofConns:
+      type: integer
+      required: false
+      description: maxNumberofConns
+
+org.openecomp.datatypes.NSSCapabilities:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+    pLMNIdList:
+      type: string
+      required: true
+      description: pLMNIdList
+    maxNumberofUEs:
+      type: integer
+      required: true
+      default: 10000
+      description: maxNumberofUEs
+    latency:
+      type: integer
+      required: true
+      default: 30
+      description: latency
+    uEMobilityLevel:
+      type: string
+      constraints:
+        - valid_values: ["stationary", "nomadic","restricted mobility","fully mobility"]
+      required: false
+      description: uEMobilityLevel
+    resourceSharingLevel:
+      type: string
+      required: true
+      default: "Shared"
+      constraints:
+        - valid_values: ["Shared", "Non-shared"]
+      description: resourceSharingLevel
+    sST:
+      type: string
+      required: true
+      default: "eMBB"
+      constraints:
+        - valid_values: ["eMBB", "uRLLC", "mIot"]
+      description: sST
+    expDataRateDL:
+      type: integer
+      required: false
+      description: expDataRateDL
+    expDataRateUL:
+      type: integer
+      required: false
+      description: expDataRateUL
+    areaTrafficCapDL:
+      type: integer
+      required: false
+      description: areaTrafficCapDL
+    areaTrafficCapUL:
+      type: integer
+      required: false
+      description: areaTrafficCapUL
+    overallUserDensity:
+      type: integer
+      required: false
+      description: overallUserDensity
+    activityFactor:
+      type: integer
+      required: false
+      description: activityFactor
+    cSAvailabilityTarget:
+      type: float
+      required: false
+      description: cSAvailabilityTarget
+    cSReliabilityMeanTime:
+      type: string
+      required: false
+      description: cSReliabilityMeanTime
+    expDataRate:
+      type: integer
+      required: false
+      description: expDataRate
+    msgSizeByte:
+      type: string
+      required: false
+      description: msgSizeByte
+    transferIntervalTarget:
+      type: string
+      required: false
+      description: transferIntervalTarget
+    survivalTime:
+      type: string
+      required: false
+      description: survivalTime
+    maxNumberofPDUSession:
+      type: integer
+      required: false
+      description: maxNumberofPDUSession
+
+org.openecomp.datatypes.ServiceProfile:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+    sNSSAI:
+      type: string
+      required: true
+      description: sNSSAI
+    pLMNIdList:
+      type: string
+      required: true
+      description: pLMNIdList
+    maxNumberofUEs:
+      type: integer
+      required: true
+      default: 1000
+      description: maxNumberofUEs
+    latency:
+      type: integer
+      required: true
+      default: 30
+      description: latency
+    activityFactor:
+      type: integer
+      constraints:
+        - in_range: [0,100]
+      required: false
+      default: 20
+      description: activityFactor
+    coverageAreaTAList:
+      type: string
+      required: false
+      description: coverageAreaTAList
+    uEMobilityLevel:
+      type: string
+      constraints:
+        - valid_values: ["stationary", "nomadic","restricted mobility","fully mobility"]
+      required: false
+      description: uEMobilityLevel
+    resourceSharingLevel:
+      type: string
+      required: true
+      default: "Shared"
+      constraints:
+        - valid_values: ["Shared", "Non-shared"]
+      description: resourceSharingLevel
+    sST:
+      type: string
+      required: true
+      default: "eMBB"
+      constraints:
+        - valid_values: ["eMBB", "uRLLC", "mIot"]
+      description: sST
+    availability:
+      type: float
+      required: false
+      description: availability
+    reliability:
+      type: string
+      required: false
+      description: reliability
+    dLThptPerUE:
+      type: integer
+      required: false
+      description: dLThptPerUE
+    uLThptPerUE:
+      type: integer
+      required: false
+      description: uLThptPerUE
+    maxPktSize:
+      type: integer
+      required: false
+      description: maxPktSize
+    termDensity:
+      type: integer
+      required: false
+      description: termDensity
+    jitter:
+      type: integer
+      required: false
+      description: jitter
+    survivalTime:
+      type: string
+      required: false
+      description: survivalTime
+    dLThptPerSlice:
+      type: integer
+      required: false
+      description: dLThptPerSlice
+    uLThptPerSlice:
+      type: integer
+      required: false
+      description: uLThptPerSlice
+    maxNumberofConns:
+      type: integer
+      required: false
+      description: maxNumberofConns
+
+org.openecomp.datatypes.SliceProfile:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+    sNSSAI:
+      type: string
+      required: true
+      description: sNSSAI
+    pLMNIdList:
+      type: string
+      required: true
+      description: pLMNIdList
+    maxNumberofUEs:
+      type: integer
+      required: true
+      default: 1000
+      description: maxNumberofUEs
+    latency:
+      type: integer
+      required: true
+      default: 30
+      description: latency
+    expDataRateDL:
+      type: integer
+      required: false
+      description: expDataRateDL
+    expDataRateUL:
+      type: integer
+      required: false
+      description: expDataRateUL
+    areaTrafficCapDL:
+      type: integer
+      required: false
+      description: areaTrafficCapDL
+    areaTrafficCapUL:
+      type: integer
+      required: false
+      description: areaTrafficCapUL
+    overallUserDensity:
+      type: integer
+      required: false
+      description: overallUserDensity
+    activityFactor:
+      type: integer
+      required: false
+      description: activityFactor
+    coverageAreaTAList:
+      type: string
+      required: false
+      description: coverageAreaTAList
+    uEMobilityLevel:
+      type: string
+      constraints:
+        - valid_values: ["stationary", "nomadic","restricted mobility","fully mobility"]
+      required: false
+      description: uEMobilityLevel
+    resourceSharingLevel:
+      type: string
+      required: true
+      default: "Shared"
+      constraints:
+        - valid_values: ["Shared", "Non-shared"]
+      description: resourceSharingLevel
+    sST:
+      type: string
+      required: true
+      default: "eMBB"
+      constraints:
+        - valid_values: ["eMBB", "uRLLC", "mIot"]
+      description: sST
+    cSAvailabilityTarget:
+      type: float
+      required: false
+      description: cSAvailabilityTarget
+    cSReliabilityMeanTime:
+      type: string
+      required: false
+      description: cSReliabilityMeanTime
+    expDataRate:
+      type: integer
+      required: false
+      description: expDataRate
+    msgSizeByte:
+      type: string
+      required: false
+      description: msgSizeByte
+    transferIntervalTarget:
+      type: string
+      required: false
+      description: transferIntervalTarget
+    survivalTime:
+      type: string
+      required: false
+      description: survivalTime
+    maxNumberofPDUSession:
+      type: integer
+      required: false
+      description: maxNumberofPDUSession
+
 org.openecomp.datatypes.EcompHoming:
   derived_from: org.openecomp.datatypes.Root
   properties:
@@ -1124,12 +1576,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
       type: string
       description: IP Prefix.
       required: false
-      status: SUPPORTED
+      status: supported
     ip_prefix_len:
       type: integer
       description: IP Prefix Len.
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
   derived_from: tosca.datatypes.Root
@@ -1139,7 +1591,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
       type: list
       description: Mac Addresses List.
       required: false
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: string
 
@@ -1151,7 +1603,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
       type: string
       description: Sub Interface VLAN Tag.
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
   derived_from: tosca.datatypes.Root
@@ -1161,17 +1613,17 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
       type: string
       description: Address Mode.
       required: false
-      status: SUPPORTED
+      status: supported
     ip:
       type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
       description: IP.
       required: false
-      status: SUPPORTED
+      status: supported
     mac:
       type: string
       description: Mac.
       required: false
-      status: SUPPORTED
+      status: supported
 
 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
   derived_from: tosca.datatypes.Root
@@ -1181,7 +1633,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
       type: list
       description: Addresses pair List.
       required: false
-      status: SUPPORTED
+      status: supported
       entry_schema:
         type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
 
@@ -1241,8 +1693,6 @@ org.openecomp.datatypes.flavors.DeploymentFlavor:
         type: org.openecomp.datatypes.flavors.LicenseFlavor
         required: false
 
-
-
 org.openecomp.datatypes.ImageInfo:
   derived_from: tosca.datatypes.Root
   properties:
@@ -1257,3 +1707,1792 @@ org.openecomp.datatypes.ImageInfo:
         type: string
         required: false
         default: md5
+
+org.openecomp.datatypes.network.RelatedNetworksAssignments:
+  derived_from: org.openecomp.datatypes.Root
+  properties:
+      related_network_role:
+        type: string
+        description: The network role of the related network, sharing provider network.
+        required: false
+
+#ONAP types
+tosca.datatypes.nfv.VnfcAdditionalConfigurableProperties:
+  derived_from: tosca.datatypes.Root
+  description: VnfcAdditionalConfigurableProperties type is an empty base type for deriving data types for describing additional configurable properties for a given VNFC.
+  # below description properties added as optional, since atleast one property required to define a dataType in SDC
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfcConfigurableProperties:
+  derived_from: tosca.datatypes.Root
+  description: Defines the configurable properties of a VNFC
+  properties:
+    additional_vnfc_configurable_properties:
+      type: tosca.datatypes.nfv.VnfcAdditionalConfigurableProperties
+      description: Describes additional configuration for VNFC that can be modified using the ModifyVnfInfo operation
+      required: false
+    # derived types are expected to introduce
+    # additional_vnfc_configurable_properties with its type derived from
+    # tosca.datatypes.nfv.VnfcAdditionalConfigurableProperties
+tosca.datatypes.nfv.RequestedAdditionalCapability:
+  derived_from: tosca.datatypes.Root
+  description: describes requested additional capability for a particular VDU
+  properties:
+    requested_additional_capability_name:
+      type: string
+      description: Identifies a requested additional capability for the VDU.
+      required: true
+    support_mandatory:
+      type: boolean
+      description: Indicates whether the requested additional capability is mandatory for successful operation.
+      required: true
+    min_requested_additional_capability_version:
+      type: string
+      description: Identifies the minimum version of the requested additional capability.
+      required: false
+    preferred_requested_additional_capability_version:
+      type: string
+      description: Identifies the preferred version of the requested additional capability.
+      required: false
+    target_performance_parameters:
+      type: map
+      description: Identifies specific attributes, dependent on the requested additional capability type.
+      required: true
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.VirtualMemory:
+  derived_from: tosca.datatypes.Root
+  description: supports the specification of requirements related to virtual memory of a virtual compute resource
+  properties:
+    virtual_mem_size:
+      type: scalar-unit.size
+      description: Amount of virtual memory.
+      required: true
+    virtual_mem_oversubscription_policy:
+      type: string
+      description: The memory core oversubscription policy in terms of virtual memory to physical memory on the platform.
+      required: false
+    vdu_mem_requirements:
+      type: map
+      description: The hardware platform specific VDU memory requirements. A map of strings that contains a set of key-value pairs that describes hardware platform specific VDU memory requirements.
+      required: false
+      entry_schema:
+        type: string
+    numa_enabled:
+      type: boolean
+      description: It specifies the memory allocation to be cognisant of the relevant process/core allocation.
+      required: false
+      default: false
+tosca.datatypes.nfv.VirtualCpuPinning:
+  derived_from: tosca.datatypes.Root
+  description: Supports the specification of requirements related to the virtual CPU pinning configuration of a virtual compute resource
+  properties:
+    virtual_cpu_pinning_policy:
+      type: string
+      description: 'Indicates the policy for CPU pinning. The policy can take values of "static" or "dynamic". In case of "dynamic" the allocation of virtual CPU cores to logical CPU cores is decided by the VIM. (e.g.: SMT (Simultaneous Multi-Threading) requirements). In case of "static" the allocation is requested to be according to the virtual_cpu_pinning_rule.'
+      required: false
+      constraints:
+        - valid_values: [ static, dynamic ]
+    virtual_cpu_pinning_rule:
+      type: list
+      description: Provides the list of rules for allocating virtual CPU cores to logical CPU cores/threads
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.VirtualCpu:
+  derived_from: tosca.datatypes.Root
+  description: Supports the specification of requirements related to virtual CPU(s) of a virtual compute resource
+  properties:
+    cpu_architecture:
+      type: string
+      description: CPU architecture type. Examples are x86, ARM
+      required: false
+    num_virtual_cpu:
+      type: integer
+      description: Number of virtual CPUs
+      required: true
+      constraints:
+        - greater_than: 0
+    virtual_cpu_clock:
+      type: scalar-unit.frequency
+      description: Minimum virtual CPU clock rate
+      required: false
+    virtual_cpu_oversubscription_policy:
+      type: string
+      description: CPU core oversubscription policy e.g. the relation of virtual CPU cores to physical CPU cores/threads.
+      required: false
+    vdu_cpu_requirements:
+      type: map
+      description: The hardware platform specific VDU CPU requirements. A map of strings that contains a set of key-value pairs describing VDU CPU specific hardware platform requirements.
+      required: false
+      entry_schema:
+        type: string
+    virtual_cpu_pinning:
+      type: tosca.datatypes.nfv.VirtualCpuPinning
+      description: The virtual CPU pinning configuration for the virtualised compute resource.
+      required: false
+tosca.datatypes.nfv.LogicalNodeData:
+  derived_from: tosca.datatypes.Root
+  description: Describes compute, memory and I/O requirements associated with a particular VDU.
+  properties:
+    logical_node_requirements:
+      type: map
+      description: The logical node-level compute, memory and I/O requirements. A map  of strings that contains a set of key-value pairs that describes hardware platform specific deployment requirements, including the number of CPU cores on this logical node, a memory configuration specific to a logical node  or a requirement related to the association of an I/O device with the logical node.
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
+  derived_from: tosca.datatypes.Root
+  description: Describes requirements on a virtual network interface
+  properties:
+    name:
+      type: string
+      description: Provides a human readable name for the requirement.
+      required: false
+    description:
+      type: string
+      description: Provides a human readable description of the requirement.
+      required: false
+    support_mandatory:
+      type: boolean
+      description: Indicates whether fulfilling the constraint is mandatory (TRUE) for successful operation or desirable (FALSE).
+      required: true
+    network_interface_requirements:
+      type: map
+      description: The network interface requirements. A map of strings that contain a set of key-value pairs that describes the hardware platform specific  network interface deployment requirements.
+      required: true
+      entry_schema:
+        type: string
+    nic_io_requirements:
+      type: tosca.datatypes.nfv.LogicalNodeData
+      description: references (couples) the CP with any logical node I/O requirements (for network devices) that may have been created. Linking these attributes is necessary so that so that I/O requirements that need to be articulated at the logical node level can be associated with the network interface requirements associated with the CP.
+      required: false
+
+tosca.datatypes.nfv.injectFile: #used for vCPE usecase
+  derived_from: tosca.datatypes.Root
+  properties:
+    source_path:
+      type: string
+      required: true
+    dest_path:
+      type: string
+      required: true
+tosca.datatypes.nfv.L2AddressData:
+  derived_from: tosca.datatypes.Root
+  description: Describes the information on the MAC addresses to be assigned to a connection point.
+  properties:
+    mac_address_assignment:
+      type: boolean
+      description: Specifies if the address assignment is the responsibility of management and orchestration function or not. If it is set to True, it is the management and orchestration function responsibility
+      required: true
+tosca.datatypes.nfv.L3AddressData:
+  derived_from: tosca.datatypes.Root
+  description: Provides information about Layer 3 level addressing scheme and parameters applicable to a CP
+  properties:
+    ip_address_assignment:
+      type: boolean
+      description: Specifies if the address assignment is the responsibility of management and orchestration function or not. If it is set to True, it is the management and orchestration function responsibility
+      required: true
+    floating_ip_activated:
+      type: boolean
+      description: Specifies if the floating IP scheme is activated on the Connection Point or not
+      required: true
+    ip_address_type:
+      type: string
+      description: Defines address type. The address type should be aligned with the address type supported by the layer_protocols properties of the parent VnfExtCp
+      required: false
+      constraints:
+        - valid_values: [ ipv4, ipv6 ]
+    number_of_ip_address:
+      type: integer
+      description: Minimum number of IP addresses to be assigned
+      required: false
+      constraints:
+        - greater_than: 0
+    fixed_ip_address: #Introduced from Beijing release, only used for vCPE usecase
+      type: list
+      entry_schema:
+        type: string
+      required: false
+tosca.datatypes.nfv.AddressData:
+  derived_from: tosca.datatypes.Root
+  description: Describes information about the addressing scheme and parameters applicable to a CP
+  properties:
+    address_type:
+      type: string
+      description: Describes the type of the address to be assigned to a connection point. The content type shall be aligned with the address type supported by the layerProtocol property of the connection point
+      required: true
+      constraints:
+        - valid_values: [ mac_address, ip_address ]
+    l2_address_data:
+      type: tosca.datatypes.nfv.L2AddressData
+      description: Provides the information on the MAC addresses to be assigned to a connection point.
+      required: false
+    l3_address_data:
+      type: tosca.datatypes.nfv.L3AddressData
+      description: Provides the information on the IP addresses to be assigned to a connection point
+      required: false
+tosca.datatypes.nfv.ConnectivityType:
+  derived_from: tosca.datatypes.Root
+  description: describes additional connectivity information of a virtualLink
+  properties:
+    layer_protocols:
+      type: list
+      description: Identifies the protocol a virtualLink gives access to (ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire).The top layer protocol of the virtualLink protocol stack shall always be provided. The lower layer protocols may be included when there are specific requirements on these layers.
+      required: true
+      entry_schema:
+        type: string
+        constraints:
+          - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
+    flow_pattern:
+      type: string
+      description: Identifies the flow pattern of the connectivity
+      required: false
+      constraints:
+        - valid_values: [ line, tree, mesh ]
+tosca.datatypes.nfv.VlFlavour:
+  derived_from: tosca.datatypes.Root
+  properties:
+    flavourId:
+      type: string
+tosca.datatypes.nfv.ext.AddressPairs:
+  properties:
+    ip:
+      type: string
+      required: false
+    mac:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.FloatingIP:
+  properties:
+    external_network:
+      type: string
+      required: false
+    ip_address:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.LocationInfo:
+  properties:
+    availability_zone:
+      type: string
+      required: false
+    vimid:
+      type: integer
+      required: false
+    tenant:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.HostRouteInfo:
+  properties:
+    destination:
+      type: string
+      required: false
+    nexthop:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.InjectData:
+  properties:
+    file_name:
+      type: string
+      required: false
+    file_data:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.zte.WatchDog:
+  properties:
+    enable_delay:
+      type: integer
+      required: false
+    action:
+      type: string
+      required: false
+tosca.datatypes.nfv.ext.LocalAffinityOrAntiAffinityRule:
+  properties:
+    scope:
+      type: string
+      required: false
+    affinity_antiaffinity:
+      type: string
+      required: false
+tosca.datatypes.nfv.VduProfile:
+  derived_from: tosca.datatypes.Root
+  description: describes additional instantiation data for a given Vdu.Compute used in a specific deployment flavour.
+  properties:
+    min_number_of_instances:
+      type: integer
+      description: Minimum number of instances of the VNFC based on this Vdu.Compute that is permitted to exist for a particular VNF deployment flavour.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    max_number_of_instances:
+      type: integer
+      description: Maximum number of instances of the VNFC based on this Vdu.Compute that is permitted to exist for a particular VNF deployment flavour.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    watchdog: #Introduced from Beijing release, only used for vCPE usecase, outside the scope of SOL001 v2.5.1
+      type: string
+      required: true
+    vmBootUpTimeOut: #Introduced from Beijing release, only used for vCPE usecase, outside the scope of SOL001 v2.5.1
+      type: integer
+      required: false
+tosca.datatypes.nfv.LinkBitrateRequirements:
+  derived_from: tosca.datatypes.Root
+  description: describes the requirements in terms of bitrate for a virtual link
+  properties:
+    root:
+      type: integer # in bits per second
+      description: Specifies the throughput requirement in bits per second of the link (e.g. bitrate of E-Line, root bitrate of E-Tree, aggregate capacity of E-LAN).
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    leaf:
+      type: integer # in bits per second
+      description: Specifies the throughput requirement in bits per second of leaf connections to the link when applicable to the connectivity type (e.g. for E-Tree and E LAN branches).
+      required: false
+      constraints:
+        - greater_or_equal: 0
+tosca.datatypes.nfv.Qos:
+  derived_from: tosca.datatypes.Root
+  description: describes QoS data for a given VL used in a VNF deployment flavour
+  properties:
+    latency:
+      type: scalar-unit.time #Number [ms]
+      description: Specifies the maximum latency
+      required: true
+      constraints:
+        - greater_than: 0 s
+    packet_delay_variation:
+      type: scalar-unit.time #Number [ms]
+      description: Specifies the maximum jitter
+      required: true
+      constraints:
+        - greater_or_equal: 0 s
+    packet_loss_ratio:
+      type: float #Number [0 ..1]
+      description: Specifies the maximum packet loss ratio
+      required: false
+      constraints:
+        - in_range: [ 0.0, 1.0 ]
+
+tosca.datatypes.nfv.IpAllocationPool:
+  derived_from: tosca.datatypes.Root
+  description: Specifies a range of IP addresses
+  properties:
+    start_ip_address:
+      type: string
+      description: The IP address to be used as the first one in a pool of addresses derived from the cidr block full IP range
+      required: true
+    end_ip_address:
+      type: string
+      description: The IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range
+      required: true
+tosca.datatypes.nfv.L2ProtocolData:
+  derived_from: tosca.datatypes.Root
+  description: describes L2 protocol data for a given virtual link used in a specific VNF deployment flavour.
+  properties:
+    name:
+      type: string
+      description: Identifies the network name associated with this L2 protocol.
+      required: false
+    network_type:
+      type: string
+      description: Specifies the network type for this L2 protocol.The value may be overridden at run-time.
+      required: false
+      constraints:
+        - valid_values: [ flat, vlan, vxlan, gre ]
+    vlan_transparent:
+      type: boolean
+      description: Specifies whether to support VLAN transparency for this L2 protocol or not.
+      required: false
+      default: false
+    mtu:
+      type: integer
+      description: Specifies the maximum transmission unit (MTU) value for this L2 protocol.
+      required: false
+      constraints:
+        - greater_than: 0
+    segmentation_id: #Introduced from Beijing release, only used for vCPE usecase, outside the scope of SOL001 v2.5.1
+      type: integer
+      required: false
+    physical_network:  #Introduced from Beijing release, only used for vCPE usecase, outside the scope of SOL001 v2.5.1
+      type: string
+      required: false
+tosca.datatypes.nfv.L3ProtocolData:
+  derived_from: tosca.datatypes.Root
+  description: describes L3 protocol data for a given virtual link used in a specific VNF deployment flavour.
+  properties:
+    name:
+      type: string
+      description: Identifies the network name associated with this L3 protocol.
+      required: false
+    ip_version:
+      type: string
+      description: Specifies IP version of this L3 protocol.The value of the ip_version property shall be consistent with the value of the layer_protocol in the connectivity_type property of the virtual link node.
+      required: true
+      constraints:
+        - valid_values: [ ipv4, ipv6 ]
+    cidr:
+      type: string
+      description: Specifies the CIDR (Classless Inter-Domain Routing) of this L3 protocol. The value may be overridden at run-time.
+      required: true
+    ip_allocation_pools:
+      type: list
+      description: Specifies the allocation pools with start and end IP addresses for this L3 protocol. The value may be overridden at run-time.
+      required: false
+      entry_schema:
+        type: tosca.datatypes.nfv.IpAllocationPool
+    gateway_ip:
+      type: string
+      description: Specifies the gateway IP address for this L3 protocol. The value may be overridden at run-time.
+      required: false
+    dhcp_enabled:
+      type: boolean
+      description: Indicates whether DHCP (Dynamic Host Configuration Protocol) is enabled or disabled for this L3 protocol. The value may be overridden at run-time.
+      required: false
+    ipv6_address_mode:
+      type: string
+      description: Specifies IPv6 address mode. May be present when the value of the ipVersion attribute is "ipv6" and shall be absent otherwise. The value may be overridden at run-time.
+      required: false
+      constraints:
+        - valid_values: [ slaac, dhcpv6-stateful, dhcpv6-stateless ]
+tosca.datatypes.nfv.VirtualLinkProtocolData:
+  derived_from: tosca.datatypes.Root
+  description: describes one protocol layer and associated protocol data for a given virtual link used in a specific VNF deployment flavour
+  properties:
+    associated_layer_protocol:
+       type: string
+       description: Identifies one of the protocols a virtualLink gives access to (ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire) as specified by the connectivity_type property.
+       required: true
+       constraints:
+         - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
+    l2_protocol_data:
+       type: tosca.datatypes.nfv.L2ProtocolData
+       description: Specifies the L2 protocol data for a virtual link. Shall be present when the associatedLayerProtocol attribute indicates a L2 protocol and shall be absent otherwise.
+       required: false
+    l3_protocol_data:
+       type: tosca.datatypes.nfv.L3ProtocolData
+       description: Specifies the L3 protocol data for this virtual link.  Shall be present when the associatedLayerProtocol attribute indicates a L3 protocol and shall be absent otherwise.
+       required: false
+
+tosca.datatypes.nfv.VlProfile:
+  derived_from: tosca.datatypes.Root
+  description: Describes additional instantiation data for a given VL used in a specific VNF deployment flavour.
+  properties:
+    max_bitrate_requirements:
+      type: tosca.datatypes.nfv.LinkBitrateRequirements
+      description: Specifies the maximum bitrate requirements for a VL instantiated according to this profile.
+      required: true
+    min_bitrate_requirements:
+      type: tosca.datatypes.nfv.LinkBitrateRequirements
+      description: Specifies the minimum bitrate requirements for a VL instantiated according to this profile.
+      required: true
+    qos:
+      type: tosca.datatypes.nfv.Qos
+      description: Specifies the QoS requirements of a VL instantiated according to this profile.
+      required: false
+    virtual_link_protocol_data:
+      type: list
+      description: Specifies the protocol data for a virtual link.
+      required: false
+      entry_schema:
+        type: tosca.datatypes.nfv.VirtualLinkProtocolData
+tosca.datatypes.nfv.VduLevel:
+  derived_from: tosca.datatypes.Root
+  description: Indicates for a given Vdu.Compute in a given level the number of instances to deploy
+  properties:
+    number_of_instances:
+      type: integer
+      description: Number of instances of VNFC based on this VDU to deploy for this level.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+tosca.datatypes.nfv.ScaleInfo:
+  derived_from: tosca.datatypes.Root
+  description: Indicates for a given scaleAspect the corresponding scaleLevel
+  properties:
+    scale_level:
+      type: integer
+      description: The scale level for a particular aspect
+      required: true
+      constraints:
+        - greater_or_equal: 0
+tosca.datatypes.nfv.ScalingAspect:
+  derived_from: tosca.datatypes.Root
+  properties:
+    name:
+      type: string
+      required: true
+    description:
+      type: string
+      required: true
+    max_scale_level:
+      type: integer # positiveInteger
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    step_deltas:
+      type: list
+      required: false
+      entry_schema:
+        type: string # Identifier
+tosca.datatypes.nfv.InstantiationLevel:
+  derived_from: tosca.datatypes.Root
+  description: Describes the scale level for each aspect that corresponds to a given level of resources to be instantiated within a deployment flavour in term of the number VNFC instances
+  properties:
+    description:
+      type: string
+      description: Human readable description of the level
+      required: true
+    scale_info:
+      type: map # key: aspectId
+      description: Represents for each aspect the scale level that corresponds to this instantiation level. scale_info shall be present if the VNF supports scaling.
+      required: false
+      entry_schema:
+        type: tosca.datatypes.nfv.ScaleInfo
+
+tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the InstantiateVnf operation.
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfScaleOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: Represents information that affect the invocation of the ScaleVnf operation
+  properties:
+    scaling_by_more_than_one_step_supported:
+      type: boolean
+      description: Signals whether passing a value larger than one in the numScalingSteps parameter of the ScaleVnf operation is supported by this VNF.
+      required: false
+      default: false
+tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the ScaleVnfToLevel operation
+  properties:
+    arbitrary_target_levels_supported:
+      type: boolean
+      description: Signals whether scaling according to the parameter "scaleInfo" is supported by this VNF
+      required: true
+tosca.datatypes.nfv.VnfHealOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the HealVnf operation
+  properties:
+    causes:
+      type: list
+      description: Supported "cause" parameter values
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.VnfTerminateOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the TerminateVnf
+  properties:
+    min_graceful_termination_timeout:
+      type: scalar-unit.time # For TOSCA V1.2 use type as scalar-unit.time  instead of integer
+      description: Minimum timeout value for graceful termination of a VNF instance
+      required: true
+    max_recommended_graceful_termination_timeout:
+      type: scalar-unit.time # For TOSCA V1.2 use type as scalar-unit.time  instead of integer
+      description: Maximum recommended timeout value that can be needed to gracefully terminate a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint
+      required: false
+tosca.datatypes.nfv.VnfOperateOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the OperateVnf operation
+  properties:
+    min_graceful_stop_timeout:
+      type: scalar-unit.time
+      description: Minimum timeout value for graceful stop of a VNF instance
+      required: true
+    max_recommended_graceful_stop_timeout:
+      type: scalar-unit.time
+      description: Maximum recommended timeout value that can be needed to gracefully stop a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint
+      required: false
+tosca.datatypes.nfv.VnfChangeFlavourOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the ChangeVnfFlavour operation
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfProfile:
+  derived_from: tosca.datatypes.Root
+  description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF.
+  properties:
+    instantiation_level:
+      type: string
+      description: Identifier of the instantiation level of the VNF DF to be used for instantiation. If not present, the default instantiation level as declared in the VNFD shall be used.
+      required: false
+    min_number_of_instances:
+      type: integer
+      description: Minimum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    max_number_of_instances:
+      type: integer
+      description: Maximum number of instances of the VNF based on this VNFD that is permitted to exist for this VnfProfile.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    service_availability_level:
+      type: integer
+      description: If present, specifies the service availability level for the VNF instance created from this profile. 
+      required: false 
+      constraints:
+        - greater_or_equal: 1
+tosca.datatypes.nfv.UriAuthority:
+  derived_from: tosca.datatypes.Root
+  description: information that corresponds to the authority component of a URI as specified in IETF RFC 3986 [8]
+  properties:
+    user_info:
+      type: string # shall comply with IETF RFC 3986
+      description: user_info field of the authority component of a URI
+      required: false
+    host:
+      type: string # shall comply with IETF RFC 3986
+      description: host field of the authority component of a URI
+      required: false
+    port:
+      type: string # shall comply with IETF RFC 3986
+      description: port field of the authority component of a URI
+      required: false
+tosca.datatypes.nfv.UriComponents:
+  derived_from: tosca.datatypes.Root
+  description: information used to build a URI that complies with IETF RFC 3986 [8].
+  properties:
+    scheme:
+      type: string # shall comply with IETF RFC3986
+      description: scheme component of a URI.
+      required: true
+    authority:
+      type: tosca.datatypes.nfv.UriAuthority
+      description: Authority component of a URI
+      required: false
+    path:
+      type: string # shall comply with IETF RFC 3986
+      description: path component of a URI.
+      required: false
+    query:
+      type: string # shall comply with IETF RFC 3986
+      description: query component of a URI.
+      required: false
+    fragment:
+      type: string # shall comply with IETF RFC 3986
+      description: fragment component of a URI.
+      required: false
+tosca.datatypes.nfv.InterfaceDetails:
+  derived_from: tosca.datatypes.Root
+  description: information used to access an interface exposed by a VNF
+  properties:
+    uri_components:
+      type: tosca.datatypes.nfv.UriComponents
+      description: Provides components to build a Uniform Ressource Identifier (URI) where to access the interface end point.
+      required: false
+    interface_specific_data:
+      type: map
+      description: Provides additional details that are specific to the type of interface considered.
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.VirtualLinkMonitoringParameter:
+  derived_from: tosca.datatypes.Root
+  description: Represents information on virtualised resource related performance metrics applicable to the VNF.
+  properties:
+    name:
+      type: string
+      description: Human readable name of the monitoring parameter
+      required: true
+    performance_metric:
+      type: string
+      description: Identifies a performance metric derived from those defined in ETSI GS NFV-IFA 027.The packetOutgoingVirtualLink and packetIncomingVirtualLink metrics shall be obtained by aggregation the PacketOutgoing and PacketIncoming measurements defined in clause 7.1 of GS NFV-IFA 027 of all virtual link ports attached to the virtual link to which the metrics apply.
+      required: true
+      constraints:
+         - valid_values: [ packet_outgoing_virtual_link, packet_incoming_virtual_link, byte_incoming, byte_outgoing, packet_incoming, packet_outgoing ]
+    collection_period:
+      type: scalar-unit.time
+      description: Describes the recommended periodicity at which to collect the performance information.
+      required: false
+      constraints:
+        - greater_than: 0 s
+tosca.datatypes.nfv.VnfcMonitoringParameter:
+  derived_from: tosca.datatypes.Root
+  description: Represents information on virtualised resource related performance metrics applicable to the VNF.
+  properties:
+    name:
+      type: string
+      description: Human readable name of the monitoring parameter
+      required: true
+    performance_metric:
+      type: string
+      description: Identifies the performance metric, according to ETSI GS NFV-IFA 027.
+      required: true
+      constraints:
+        - valid_values: [ v_cpu_usage_mean_vnf, v_cpu_usage_peak_vnf, v_memory_usage_mean_vnf, v_memory_usage_peak_vnf, v_disk_usage_mean_vnf, v_disk_usage_peak_vnf, byte_incoming_vnf_int_cp, byte_outgoing_vnf_int_cp, packet_incoming_vnf_int_cp, packet_outgoing_vnf_int_cp, v_cpu_usage_mean, v_cpu_usage_peak, v_memory_usage_mean, v_memory_usage_peak, v_disk_usage_mean, v_disk_usage_peak, v_net_byte_incoming, v_net_byte_outgoing, v_net_packet_incoming, v_net_packet_outgoing, usage_mean_vStorage, usage_peak_vStorage ]
+    collection_period:
+      type: scalar-unit.time
+      description: Describes the recommended periodicity at which to collect the performance information.
+      required: false
+      constraints:
+        - greater_than: 0 s
+tosca.datatypes.nfv.VnfChangeExtConnectivityOperationConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: represents information that affect the invocation of the ChangeExtVnfConnectivity operation
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfMonitoringParameter:
+  derived_from: tosca.datatypes.Root
+  description: Represents information on virtualised resource related performance metrics applicable to the VNF.
+  properties:
+    name:
+      type: string
+      description: Human readable name of the monitoring parameter
+      required: true
+    performance_metric:
+      type: string
+      description: Identifies the performance metric, according to ETSI GS NFV-IFA 027.
+      required: true
+      constraints:
+        - valid_values: [ v_cpu_usage_mean_vnf, v_cpu_usage_peak_vnf, v_memory_usage_mean_vnf, v_memory_usage_peak_vnf, v_disk_usage_mean_vnf, v_disk_usage_peak_vnf, byte_incoming_vnf_ext_cp, byte_outgoing_vnf_ext_cp, packet_incoming_vnf_ext_cp, packet_outgoing_vnf_ext_cp ]
+    collection_period:
+      type: scalar-unit.time
+      description: Describes the recommended periodicity at which to collect the performance information.
+      required: false
+      constraints:
+        - greater_than: 0 s
+tosca.datatypes.nfv.VnfChangeCurrentPackageOperationConfiguration:
+    derived_from: tosca.datatypes.Root
+    description: represents information that affect the invocation of the change current VNF Package operation.
+    # This data type definition is reserved for future use in the present document.
+    # properties:
+tosca.datatypes.nfv.VnfCreateSnapshotOperationConfiguration:
+    derived_from: tosca.datatypes.Root
+    description: represents information that affect the invocation of the CreateVnfSnapshot operation 
+    # This data type definition is reserved for future use in the present document.
+    # properties:
+tosca.datatypes.nfv.VnfRevertToSnapshotOperationConfiguration:
+    derived_from: tosca.datatypes.Root
+    description: represents information that affect the invocation of the RevertToVnfSnapshot operation 
+    # This data type definition is reserved for future use in the present document.
+    # properties:
+tosca.datatypes.nfv.VnfLcmOperationsConfiguration:
+  derived_from: tosca.datatypes.Root
+  description: Represents information to configure lifecycle management operations
+  properties:
+    instantiate:
+      type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration
+      description: Configuration parameters for the InstantiateVnf operation
+      required: false
+    scale:
+      type: tosca.datatypes.nfv.VnfScaleOperationConfiguration
+      description: Configuration parameters for the ScaleVnf operation
+      required: false
+    scale_to_level:
+      type: tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration
+      description: Configuration parameters for the ScaleVnfToLevel operation
+      required: false
+    change_flavour:
+      type: tosca.datatypes.nfv.VnfChangeFlavourOperationConfiguration
+      description: Configuration parameters for the changeVnfFlavourOpConfig operation
+      required: false
+    heal:
+      type: tosca.datatypes.nfv.VnfHealOperationConfiguration
+      description: Configuration parameters for the HealVnf operation
+      required: false
+    terminate:
+      type: tosca.datatypes.nfv.VnfTerminateOperationConfiguration
+      description: Configuration parameters for the TerminateVnf operation
+      required: false
+    operate:
+      type: tosca.datatypes.nfv.VnfOperateOperationConfiguration
+      description: Configuration parameters for the OperateVnf operation
+      required: false
+    change_ext_connectivity:
+      type:   tosca.datatypes.nfv.VnfChangeExtConnectivityOperationConfiguration
+      description: Configuration parameters for the changeExtVnfConnectivityOpConfig operation
+      required: false
+    change_current_package:
+      type:   tosca.datatypes.nfv.VnfChangeCurrentPackageOperationConfiguration
+      description: Configuration parameters for the ChangeCurrentVnfPackage operation
+      required: false
+    create_snapshot:
+      type:   tosca.datatypes.nfv.VnfCreateSnapshotOperationConfiguration
+      description: Configuration parameters for the CreateVnfSnapshot operation
+      required: false
+    revert_to_snapsot:
+      type:   tosca.datatypes.nfv.VnfRevertToSnapshotOperationConfiguration
+      description: Configuration parameters for the RevertToVnfSnapshot operation
+      required: false
+tosca.datatypes.nfv.CpProtocolData:
+  derived_from: tosca.datatypes.Root
+  description: Describes and associates the protocol layer that a CP uses together with other protocol and connection point information
+  properties:
+    associated_layer_protocol:
+      type: string
+      required: true
+      description: One of the values of the property layer_protocols of the CP
+      constraints:
+        - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
+    address_data:
+      type: list
+      description: Provides information on the addresses to be assigned to the CP
+      entry_schema:
+        type: tosca.datatypes.nfv.AddressData
+      required: false
+tosca.datatypes.nfv.VnfAdditionalConfigurableProperties:
+  derived_from: tosca.datatypes.Root
+  description: is an empty base type for deriving data types for describing additional configurable properties for a given VNF
+  # below description properties added as optional, since atleast one property required to define a dataType in SDC
+  properties:
+    description:
+      type: string
+    is_writable_anytime:
+      type: boolean
+      description: It specifies whether these additional configurable properties are writeable (TRUE) at anytime (i.e. prior to / at instantiation time as well as after instantiation).or (FALSE) only prior to / at instantiation time. If this property is not present, the additional configurable properties are writable anytime
+      required: false
+tosca.datatypes.nfv.VnfmInterfaceInfo:
+  derived_from: tosca.datatypes.Root
+  description: describes information enabling the VNF instance to access the NFV-MANO interfaces produced by the VNFM
+  properties:
+    interface_name: 
+      type: string 
+      description: Identifies an interface produced by the VNFM. 
+      required: true 
+      constraints: 
+        - valid_values: [ vnf_lcm, vnf_pm, vnf_fm ] 
+    details: 
+      type: tosca.datatypes.nfv.InterfaceDetails 
+      description: Provide additional data to access the interface endpoint 
+      required: false  
+    credentials: 
+      type: map
+      description: Provides credential enabling access to the interface
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.OauthServerInfo:
+  derived_from: tosca.datatypes.Root
+  description: information to enable discovery of the authorization server
+  #properties: FFS
+  #This data type definition is reserved for future use in the present document
+tosca.datatypes.nfv.VnfConfigurableProperties:
+  derived_from: tosca.datatypes.Root
+  description: indicates configuration properties for a given VNF (e.g. related to auto scaling and auto healing).
+  properties:
+    is_autoscale_enabled:
+      type: boolean
+      description: It permits to enable (TRUE)/disable (FALSE) the auto-scaling functionality. If the properties is not present for configuring, then VNF property is not supported
+      required: false
+    is_autoheal_enabled:
+      type: boolean
+      description: It permits to enable (TRUE)/disable (FALSE) the auto-healing functionality. If the properties is not present for configuring, then VNF property is not supported
+      required: false
+    vnfm_interface_info:
+      type: tosca.datatypes.nfv.VnfmInterfaceInfo
+      description: Contains information enabling access to the NFV-MANO interfaces produced by the VNFM (e.g. URIs and credentials). If the property is not present, then configuring this VNF property is not supported.
+      required: false
+    vnfm_oauth_server_info:
+      type: tosca.datatypes.nfv.OauthServerInfo
+      description: Contains information to enable discovery of the authorization server protecting access to VNFM interfaces. If the property is not present, then configuring this VNF property is not supported.
+      required: false
+    vnf_oauth_server_info:
+      type: tosca.datatypes.nfv.OauthServerInfo
+      description: Contains information to enable discovery of the authorization server to validate the access tokens provided by the VNFM when the VNFM accesses the VNF interfaces, if that functionality (token introspection) is supported by the authorization server. If the property is not present, then configuring this VNF property is not supported.
+      required: false
+    additional_configurable_properties:
+      description: It provides VNF specific configurable properties that can be modified using the ModifyVnfInfo operation
+      required: false
+      type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties
+    # derived types are expected to introduce
+    # additional_configurable_properties with its type derived from
+    # tosca.datatypes.nfv.VnfAdditionalConfigurableProperties
+tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions:
+  derived_from: tosca.datatypes.Root
+  description: is an empty base type for deriving data types for describing VNF-specific extension
+  # below description properties added as optional, since atleast one property required to define a dataType in SDC
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata:
+  derived_from: tosca.datatypes.Root
+  description: is an empty base type for deriving data types for describing VNF-specific metadata
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VnfInfoModifiableAttributes:
+  derived_from: tosca.datatypes.Root
+  description: Describes VNF-specific extension and metadata for a given VNF
+  properties:
+    extensions:
+      type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions
+      description: \"Extension\" properties of VnfInfo that are writeable
+      required: false
+      # derived types are expected to introduce
+      # extensions with its type derived from
+      # tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions
+    metadata:
+      type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata
+      description: \"Metadata\" properties of VnfInfo that are writeable
+      required: false
+      # derived types are expected to introduce
+      # metadata with its type derived from
+      # tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata
+
+tosca.datatypes.nfv.VirtualLinkBitrateLevel:
+  derived_from: tosca.datatypes.Root
+  description: Describes bitrate requirements applicable to the virtual link instantiated from a particicular VnfVirtualLink
+  properties:
+    description:
+      type: string
+      required: false
+    bitrate_requirements:
+      type: tosca.datatypes.nfv.LinkBitrateRequirements
+      description: Virtual link bitrate requirements for an instantiation level or bitrate delta for a scaling step
+      required: true
+
+tosca.datatypes.nfv.VnfOperationAdditionalParameters:
+  derived_from: tosca.datatypes.Root
+  description: Is an empty base type for deriving data type for describing VNF-specific parameters to be passed when invoking lifecycle management operations
+  # below description properties added as optional, since atleast one property required to define a dataType in SDC
+  properties:
+    description:
+      type: string
+      required: false
+tosca.datatypes.nfv.VirtualFileStorageData:
+  derived_from: tosca.datatypes.Root
+  description: VirtualFileStorageData describes file storage requirements associated with compute resources in a particular VDU
+  properties:
+    size_of_storage:
+      type: scalar-unit.size
+      description: Size of virtualized storage resource
+      required: true
+    file_system_protocol:
+      type: string
+      description: The shared file system protocol (e.g. NFS, CIFS)
+      required: true
+tosca.datatypes.nfv.VirtualObjectStorageData:
+  derived_from: tosca.datatypes.Root
+  description: VirtualObjectStorageData describes object storage requirements associated with compute resources in a particular VDU
+  properties:
+    max_size_of_storage:
+      type: scalar-unit.size
+      description: Maximum size of virtualized storage resource
+      required: false
+tosca.datatypes.nfv.VirtualBlockStorageData:
+  derived_from: tosca.datatypes.Root
+  description: VirtualBlockStorageData describes block storage requirements associated with compute resources in a particular VDU, either as a local disk or as virtual attached storage
+  properties:
+    size_of_storage:
+      type: scalar-unit.size
+      description: Size of virtualised storage resource
+      required: true
+    vdu_storage_requirements:
+      type: map
+      description: The hardware platform specific storage requirements. A map of strings that contains a set of key-value pairs that represents the hardware platform specific storage deployment requirements.
+      required: false
+      entry_schema:
+        type: string
+    rdma_enabled:
+      type: boolean
+      description: Indicates if the storage support RDMA
+      required: false
+      default: false
+tosca.datatypes.nfv.ChecksumData:
+   derived_from: tosca.datatypes.Root
+   description: Describes information about the result of performing a checksum operation over some arbitrary data 
+   properties:
+     algorithm:
+       type: string
+       description: Describes the algorithm used to obtain the checksum value
+       required: true
+       constraints:
+         - valid_values: [sha-224, sha-256, sha-384, sha-512 ]
+     hash:
+       type: string
+       description: Contains the result of applying the algorithm indicated by the algorithm property to the data to which this ChecksumData refers 
+       required: true
+
+tosca.datatypes.nfv.SwImageData:
+  derived_from: tosca.datatypes.Root
+  description: describes information  related to a software image artifact
+  properties: # in SOL001 v0.8.0: "properties or metadata:"
+    name:
+      type: string
+      description: Name of this software image
+      required: true
+    version:
+      type: string
+      description: Version of this software image
+      required: true
+    provider:
+      type: string
+      description: Provider of this software image
+      required: false
+    checksum:
+      type: string
+      description:  Checksum of the software image file 
+      required: true
+    container_format:
+      type: string
+      description: The container format describes the container file format in which software image is provided
+      required: true
+      constraints:
+        - valid_values: [ aki, ami, ari, bare, docker, ova, ovf ]
+    disk_format:
+      type: string
+      description: The disk format of a software image is the format of the underlying disk image
+      required: true
+      constraints:
+        - valid_values: [ aki, ami, ari, iso, qcow2, raw, vdi, vhd, vhdx, vmdk ]
+    min_disk:
+      type: scalar-unit.size # Number
+      description:  The minimal disk size requirement for this software image
+      required: true
+    min_ram:
+      type: scalar-unit.size # Number
+      description: The minimal RAM requirement for this software image
+      required: false
+    size:
+      type: scalar-unit.size # Number
+      description: The size of this software image
+      required: true
+    operating_system:
+      type: string
+      description: Identifies the operating system used in the software image
+      required: false
+    supported_virtualisation_environments:
+      type: list
+      description: Identifies the virtualisation environments (e.g. hypervisor) compatible with this software image
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.NsVirtualLinkQos:
+  derived_from: tosca.datatypes.nfv.Qos
+  description: describes QoS data for a given VL used in a VNF deployment flavour
+  properties:
+    priority:
+      type: integer
+      constraints:
+        - greater_or_equal: 0
+      description: Specifies the priority level in case of congestion on the underlying physical links
+      required: false
+tosca.datatypes.nfv.ServiceAvailability:
+  derived_from: tosca.datatypes.Root
+  description: service availability
+  properties:
+    level:
+      type: string
+      description: service availability levels
+      required: true
+      constraints:
+        - valid_values: [ level1, level2, level3 ]
+tosca.datatypes.nfv.NsVlProfile:
+  derived_from: tosca.datatypes.Root
+  description: Describes additional instantiation data for a given NsVirtualLink used in a specific NS deployment flavour.
+  properties:
+    max_bitrate_requirements:
+      type: tosca.datatypes.nfv.LinkBitrateRequirements
+      description: Specifies the maximum bitrate requirements for a VL instantiated according to this profile.
+      required: true
+    min_bitrate_requirements:
+      type: tosca.datatypes.nfv.LinkBitrateRequirements
+      description: Specifies the minimum bitrate requirements for a VL instantiated according to this profile.
+      required: true
+    qos:
+      type: tosca.datatypes.nfv.NsVirtualLinkQos
+      description: Specifies the QoS requirements of a VL instantiated according to this profile.
+      required: false
+    service_availability:
+      type: tosca.datatypes.nfv.ServiceAvailability
+      description: Network service virtual link service availability levels, as described in ETSI GS NFV-REL 001
+      required: false 
+    service_availability_level:
+      type: integer
+      description: Specifies the service availability level for the VL instance created from this profile
+      required: false 
+      constraints:
+        - greater_or_equal: 1
+
+tosca.datatypes.nfv.NsProfile:
+  derived_from: tosca.datatypes.Root
+  description: describes a profile for instantiating NSs of a particular NS DF according to a specific NSD and NS DF.
+  properties: 
+    ns_instantiation_level:
+      type: string
+      description: Identifier of the instantiation level of the NS DF to be used for instantiation. If not present, the default instantiation level as declared in the NSD shall be used.
+      required: false
+    min_number_of_instances:
+      type: integer
+      description: Minimum number of instances of the NS based on this NSD that is permitted to exist for this NsProfile.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    max_number_of_instances:
+      type: integer
+      description: Maximum number of instances of the NS based on this NSD that is permitted to exist for this NsProfile.
+      required: true
+      constraints:
+        - greater_or_equal: 0
+    flavour_id:
+      type: string
+      description: Identifies the applicable network service DF within the scope of the NSD.
+      required: true
+
+tosca.datatypes.nfv.MciopProfile:
+  derived_from: tosca.datatypes.Root
+  description: describes a profile for instantiating VNFs of a particular NS DF according to a specific VNFD and VNF DF.
+  properties:
+    mciopId:
+      type: string
+      description: dentifies the MCIOP in the VNF package.
+      required: true
+    deploymentOrder:
+      type: integer
+      description: Indicates the order in which this MCIOP shall be deployed in relation to other MCIOPs.  A lower value specifies an earlier deployment.
+      required: false
+      constraints:
+        - greater_or_equal: 0
+    affinityOrAntiAffinityGroupId:
+      type: list
+      description: List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP
+      required: false
+      entry_schema:
+        type: string
+    associatedVdu:
+      type: list
+      description: List of VDUs which are associated to this MCIOP and which are deployed using this MCIOP
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.BootDataVimSpecificProperties:
+  derived_from: tosca.datatypes.Root
+  description: describes the VIM specific information used for selecting VIM specific capabilities when setting the boot data.
+  properties:
+    vim_type:
+      type: string 
+      description: Discriminator for the different types of the VIM information.
+      required: false
+    properties:
+      type: map
+      description: Properties used for selecting VIM specific capabilities when setting the boot data
+      entry_schema:
+        type: string
+      required: true
+tosca.datatypes.nfv.KvpData:
+  derived_from: tosca.datatypes.Root
+  description: describes a set of key-value pairs information used to customize a virtualised compute resource at boot time by using only key-value pairs data.
+  properties:
+    data:
+      type: map
+      description: A map of strings that contains a set of key-value pairs that describes the information for configuring the virtualised compute resource.
+      required: false
+      entry_schema:
+        type: string
+tosca.datatypes.nfv.ContentOrFileData:
+  derived_from: tosca.datatypes.Root
+  description: describes a string content or a file information used to customize a virtualised compute resource at boot time by using string content or file.
+  properties:
+    data:
+      type: map
+      description: A map of strings that contains a set of key-value pairs that carries the dynamic deployment values which used to replace the corresponding variable parts in the file as identify by a URL as described in source_path. Shall be present if "source_path" is present and shall be absent otherwise..
+      required: false
+      entry_schema:
+        type: string
+    content:
+      type: string
+      description: The string information used to customize a virtualised compute resource at boot time.
+      required: false
+    source_path:
+      type: string
+      description: The URL to a file contained in the VNF package used to customize a virtualised compute resource. The content shall comply with IETF RFC 3986 [8].
+      required: false
+    destination_path:
+      type: string
+      description: The URL address when inject a file into the virtualised compute resource. The content shall comply with IETF RFC 3986 [8].
+      required: false
+tosca.datatypes.nfv.BootData:
+  derived_from: tosca.datatypes.Root
+  description: describes the information used to customize a virtualised compute resource at boot time.
+  properties:
+    vim_specific_properties:
+      type: tosca.datatypes.nfv.BootDataVimSpecificProperties
+      description: Properties used for selecting VIM specific capabilities when setting the boot data.
+      required: false
+    kvp_data:
+      type: tosca.datatypes.nfv.KvpData
+      description: A set of key-value pairs for configuring a virtual compute resource.
+      required: false
+    content_or_file_data:
+      type: tosca.datatypes.nfv.ContentOrFileData
+      description: A string content or a file for configuring a virtual compute resource. 
+      required: false
+tosca.datatypes.nfv.ServicePortData:
+  derived_from: tosca.datatypes.Root
+  description: describes the service identifying port properties exposed by the VirtualCp
+  properties:
+    name:
+      type: string
+      description: The name of the port exposed by the VirtualCp.
+      required: true
+    protocol:
+      type: string
+      description: The L4 protocol for this port exposed by the VirtualCp.
+      constraints:
+        - valid_values: 
+          - TCP
+          - UDP
+          - SCTP
+    port:
+      type: integer
+      description: The L4 port number exposed by the VirtualCp.
+      required: true
+    portConfigurable:
+      type: boolean
+      description: Specifies whether the port attribute value is allowed to be configurable.
+      required: true
+tosca.datatypes.nfv.AdditionalServiceData:
+  derived_from: tosca.datatypes.Root
+  description: describes the additional service data of the VirtualCp used to expose properties of the VirtualCp to NFV-MANO.
+  properties:
+    portData:
+      type: list
+      description: Service port numbers exposed by the VirtualCp.
+      required: false
+      entry_schema:
+        type: tosca.datatypes.nfv.ServicePortData
+    serviceData:
+      type: string
+      description: Service matching information exposed by the VirtualCp.
+      required: false
+tosca.datatypes.nfv.NsOperationAdditionalParameters:
+  derived_from: tosca.datatypes.Root
+  description: Is an empty base type for deriving data types for describing NS-specific additional parameters to be passed when invoking NS lifecycle management operations 
+  #properties:
+tosca.datatypes.nfv.Mask:
+  derived_from: tosca.datatypes.Root
+  properties:  
+    starting_point: 
+      description: Indicates the offset between the last bit of the source mac address and the first bit of the sequence of bits to be matched.
+      type: integer
+      required: true    
+    length: 
+      description: Indicates the number of bits to be matched.
+      type: integer
+      required: true
+    value:
+      description: Provide the sequence of bit values to be matched.
+      type: string
+      required: true 
+tosca.datatypes.nfv.NsMonitoringParameter:
+  derived_from: tosca.datatypes.Root
+  description: Represents information on virtualised resource related performance metrics applicable to the NS.
+  properties:
+    name:
+      type: string
+      description: Human readable name of the monitoring parameter
+      required: true
+    performance_metric:
+      type: string
+      description: Identifies a performance metric to be monitored, according to ETSI GS NFV-IFA 027. 
+      required: true
+      constraints:
+         - valid_values: [byte_incoming_sap, byte_outgoing_sap, packet_incoming_sap, packet_outgoing_sap, byte_incoming, byte_outgoing, packet_incoming, packet_outgoing ] 
+    collection_period:  
+      type: scalar-unit.time
+      description: Describes the periodicity at which to collect the performance information.
+      required: false
+
+
+
+      
+##### Partner service domain datatypes ######
+
+onap.datatypes.partner.access_details:
+  derived_from: tosca.datatypes.Root
+  properties:
+    addressId:
+      type: string
+      description: id of the site
+      required: true
+    dsl_stability_profile:
+      type: string
+      description: profile of stability
+      required: false
+      default: standard
+      constraints:
+        - valid_values:
+            - standard
+            - stable
+    partner_priorty_assist:
+      type: boolean
+      description: assistance flag
+      required: false
+      default: true
+    battery_backup:
+      type: boolean
+      description: backup requirement flag
+      required: false
+      default: true
+    central_splitter:
+      type: boolean
+      description: applicable to FTTN service
+      required: false
+      default: true
+    service_restoration_sla:
+      type: string
+      description: This is the service restoration SLA from an partner perspective.
+      required: false
+      default: Standard
+      constraints:
+        - valid_values:
+            - Standard
+            - Enhanced
+
+onap.datatypes.partner.bandwidth:
+  derived_from: tosca.datatypes.Root
+  properties:
+    bandwidth_type:
+      type: string
+      description: type of bandwidth
+      required: true
+      default: standard
+      constraints:
+        - valid_values:
+            - standard
+            - guaranteed
+    downstream:
+      type: string
+      description: down speed
+      required: true
+      constraints:
+        - valid_values:
+            - "128"
+            - "512"
+            - "1"
+            - "2"
+            - "5"
+            - "10"
+            - "20"
+            - "25"
+            - "30"
+            - "40"
+            - "50"
+            - "100"
+            - "250"
+            - "500"
+            - "1000"
+    upstream:
+      type: string
+      description: up speed
+      required: false
+      constraints:
+        - valid_values:
+            - "128"
+            - "512"
+            - "1"
+            - "2"
+            - "5"
+            - "10"
+            - "20"
+            - "25"
+            - "30"
+            - "40"
+            - "50"
+            - "100"
+            - "250"
+            - "500"
+            - "1000"
+    units:
+      type: string
+      description: unit of speed
+      required: true
+      constraints:
+        - valid_values:
+            - k
+            - M
+    service_alias:
+      type: string
+      description: 16 digit id
+      required: false
+
+onap.datatypes.partner.service_details:
+  derived_from: tosca.datatypes.Root
+  properties:
+    bandwidth:
+      type: onap.datatypes.partner.bandwidth
+      description: bandwidth details for access
+      required: false
+    line_of_business:
+      type: string
+      description: LOB
+      required: false
+      constraints:
+        - valid_values:
+            - CONSUMER
+            - WHOLESALE
+            - BUSINESS
+    access_details:
+      type: onap.datatypes.partner.access_details
+      required: false
+
+onap.datatypes.partner.sppartner_details:
+  derived_from: tosca.datatypes.Root
+  properties:
+    partner_url:
+      type: string
+      description: Partner URL to access and provision the service
+      required: false
+    uuid:
+      type: string
+      description: UUID of the service definition defined in the partner catalog
+      required: false
+    auth_user:
+      type: string
+      description: Authentication  details to access the Service URL
+      required: false
+    auth_password:
+      type: string
+      description: Authentication  details to access the Service URL
+      required: false
+
+onap.datatypes.ToscaConceptIdentifier:
+  derived_from: tosca.datatypes.Root
+  properties:
+    name:
+      type: string
+      required: true
+    version:
+      type: string
+      required: true
+
+tosca.datatypes.asd.networkInterfaceRequirements:
+  derived_from: tosca.datatypes.Root
+  version: 0.1
+  description: "Describes the datatype for network interface requirements"
+  properties:
+    trunk_mode:
+      description: >
+        Information about whether the CP instantiated from this Cp is
+        in Trunk mode (802.1Q or other). When operating in "trunk mode",
+        the Cp is capable of carrying traffic for several VLANs.
+        Absence of this property implies that trunkMode is not configured
+        for the Cp i.e. It is equivalent to boolean value "false".
+      required: true
+      type: boolean
+      default: false
+    ipam:
+      description: >
+        Identifies whether application expects IP address assignment to be
+        managed by the cluster infrastructure (CNI IPAM plugin), or
+        configured by orchestrator via for example helm input parameter,
+        or if IP assignment is handled by the application itself.
+      required: true
+      type: string
+      constraints:
+        - valid_values: ["infraProvided", "orchestrated", "userManaged"]
+      default: "infraProvided"
+    interface_type:
+      description: >
+        Indicates what type of network interface the application expects.
+        Kernel based virtual netdev based on CNIs such as ovs | bridge |
+        macvlan | ipvlan, or PCIe dev directly visible in application
+        namespace with kernel or userspace driver or bonded with the Bond
+        CNI, or userspace-CNI based network interface
+        (requires DPDK-OVS/VPP vSwitch).
+      required: true
+      type: string
+      constraints:
+        - valid_values: ["kernel.netdev", "direct.userdriver", "direct.kerneldriver", "direct.bond", "userspace"]
+      default: "kernel.netdev"
+    interface_option:
+      description: >
+        This attribute describes verified realization options for the
+        network interface in question. Currently listed options
+        (virtio and memif) are applicable for the interfaceType “userspace”.
+      required: false
+      type: list
+      entry_schema:
+        type: string
+        constraints:
+          - valid_values: ["virtio", "memif"]
+    interface_redundancy:
+      description: >
+        Identifies switch-plane redundancy method the application uses,
+        and that node infrastructure is required to comply with.
+        "infraProvided", “left” and “right”: The container sees a
+        single vNIC that a) the infrastructure bonds over both switchplanes
+        or b) that is connected to the network via only left or
+        right the switchplane.
+        The other cases are for a mated pair of vnics connecting to
+        same network, but where one vNIC connects
+        via left switch plane and the other via right switch plane,
+        and where the application manages the redundancy.
+        "activePassiveBond": the application bonds with move of MAC address.
+        "activeActiveBond“: bonded left/right links must be part of a multi-chassis LAG
+        "activePassiveL3": application will move application IP address between the vNICs.
+        "activeActiveL3": the application uses anycast/ECMP.
+      required: true
+      type: string
+      constraints:
+        - valid_values: ["infraProvided", "actPassBond", "actActBond", "actPassL3", "actActL3", "Left", "Right"]
+      default: "infraProvided"
+    nic_options:
+      description: >
+        Identifies for the direct.userdriver interface type, the physical
+        nics the driver is verified to work with.
+        Allowed values for nic types must be handled via a registry or be standardized.
+      required: false
+      type: list
+      entry_schema:
+        type: string
+
+tosca.datatypes.asd.paramMappings:
+  version: 0.1
+  derived_from: tosca.datatypes.Root
+  description: "Describes the datatype for parameter mapping"
+  properties:
+    loadbalancer_IP:
+      description: >
+        When present, this attribute specifies the name of the deployment
+        artifact input parameter through which the orchestrator can
+        configure the loadbalancerIP parameter of the K8s service
+        or ingress controller that the extCpdData represents.
+        Note: The format of the Content strings is specific for each different
+        orchestration templating technology used (Helm, Teraform, etc.).
+        Currently only a format for use with Helm charts is suggested:
+        "<helmchartname>:[<subchartname>.]^(0..N)[<parentparamname>.]^(0..N)<paramname>". 
+        Whether the optional parts of the format are present depends on how the
+        parameter is declared in the helm chart. An example is:
+        "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.LBIP".
+      required: false
+      type: string
+    external_IPs:
+      description: >
+        When present, this attribute specifies the name of the deployment
+        artifact input parameter through which the orchestrator can
+        configure the extermalIPs parameter of the K8s service or ingress
+        controller, or the pod network interface annotation, that the
+        extCpdData represents.
+        Note: The format of the Content strings is specific for each different
+        orchestration templating technology used (Helm, Teraform, etc.).
+        Currently only a format for use with Helm charts is suggested:
+        "<helmchartname>:[<subchartname>.]^(0..N)[<parentparamname>.]^(0..N)<paramname>". 
+        Whether the optional parts of the format are present depends on how the
+        parameter is declared in the helm chart. An example is:
+        "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.extIP".
+      required: false
+      type: list
+      entry_schema:
+        type: string
+    nad_names:
+      description: >
+        Specifies, for an extCpdData respesenting a secondary network interface,
+        the name(s) of the deployment artifact input parameter(s) through which
+        the orchestrator can provide the names of the network attachment
+        definitions (NADs) the orchestrator has created as base for the network
+        interface the extCpdData represents.
+        Note 1: When the extCpdData represent a networkRedundant/mated-pair of
+        sriov interfaces, there are references to 2 or 3 related NADs needed
+        to be passed, while for other interface types only one NAD reference
+        is needed to be passed.
+        Note 2: The format of the Content strings is specific for each different
+        orchestration templating technology used (Helm, Teraform, etc.).
+        Currently only a format for use with Helm charts is suggested:
+        "<helmchartname>:[<subchartname>.]^(0..N)[<parentparamname>.]^(0..N)<paramname>". 
+        Whether the optional parts of the format are present depends on how the
+        parameter is declared in the helm chart. An example is:
+        chartName:"subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.nadName".
+        Note 3: A direct attached (passthrough) network interface, such as an sriov
+        interface, attaches to a network via only one of the two switch planes
+        in the infrastructure.
+        When using a direct attached network interface one therefore commonly in a
+        pod uses a mated pair of sriov network attachments, where each interface
+        attaches same network but via different switchplane.
+        The application uses the mated pair of network interfaces as a single
+        logical “swith-path-redundant” network interface – and this is represented
+        by a single extCpdData.
+        Also there is a case where a third “bond” attachment interface is used in
+        the pod, bonding the two direct interfaces so that the application do not
+        need to handle the redundancy issues – application just uses the bond interface.
+        In this case, all three attachments are together making up a logical
+        “switch-path-redundant” network interface represented by a single extCpdData.
+        When three NADs are used in the extCpdData the NAD implementing the bond attachment
+        interface is provided through the parameter indicated in the third place in
+        the nadNames attribute.
+      required: false
+      type: list
+      entry_schema:
+        type: string
+    nad_namespace:
+      description: >
+        Specifies, for an extCpdData respesenting a secondary network interface,
+        the name of the deployment artifact input parameter through which the orchestrator
+        can provide the namespace where the NetworkAttachmentDefinitions (NADs) are located.
+        Attribute may be omitted if the namespace is same as the application
+        namespace.
+        Note: The format of the Content strings is specific for each different
+        orchestration templating technology used (Helm, Teraform, etc.).
+        Currently only a format for use with Helm charts is suggested:
+        "<helmchartname>:[<subchartname>.]^(0..N)[<parentparamname>.]^(0..N)<paramname>". 
+        Whether the optional parts of the format are present depends on how the
+        parameter is declared in the helm chart. An example is:
+        "chartName:subChart1.subChart2.subChart3.Parent1.Parent2.Parent3.NameSpace".
+      required: false
+      type: string
+
+tosca.datatypes.asd.extCpdData:
+  version: 0.1
+  derived_from: tosca.datatypes.Root
+  description: "Describes the datatype for external connection point definition data"
+  properties:
+    id:
+      description: "The identifier of this extCpdData"
+      required: true
+      type: string
+    description:
+      description: >
+        This property describes for a particular ExtCpd instance
+        what service it exposes.
+      required: true
+      type: string
+    virtual_link_requirement:
+      description: >
+        Refers in an abstract way to the network or multiple networks that
+        the ExtCpd shall be exposed on (ex: OAM, EndUser, backhaul, LI, etc)
+      required: true
+      type: string
+    network_interface_realization_requirements:
+      description: >
+        Details container implementation specific requirements on
+        the NetworkAttachmentDefinition
+      required: false
+      type: tosca.datatypes.asd.networkInterfaceRequirements
+    input_param_mappings:
+      description: >
+        Information on what helm chart input parameters that
+        are required to be configured for this extCpd
+      required: false
+      type: tosca.datatypes.asd.paramMappings
+    resource_mapping:
+      description: >
+        Kubernetes API resource name for the resource manifest for the service,
+        ingress controller or pod
+      required: false
+      type: string
+
+tosca.datatypes.asd.enhancedClusterCapabilities:
+  version: 0.1
+  derived_from: tosca.datatypes.Root
+  description: "Describes the datatype for parameter mapping"
+  properties:
+    min_kernel_version:
+      description: >
+        Describes the minimal required Kernel version, e.g. 4.15.0.
+        Coded as displayed by linux command uname –r
+      required: true
+      type: string
+    required_kernel_modules:
+      description: >
+        Required kernel modules are coded as listed by linux lsmod command,
+        e.g. ip6_tables, cryptd, nf_nat etc.
+      required: false
+      type: list
+      entry_schema:
+        type: string
+    conflicting_kernel_modules:
+      description: >
+        Kernel modules, which must not be present in the target environment.
+        The kernel modules are coded as listed by linux lsmod command,
+        e.g., ip6_tables, cryptd, nf_nat etc.
+        Example: Linux kernel SCTP module, which would conflict with use of
+        proprietary user space SCTP stack provided by the application.
+      required: false
+      type: list
+      entry_schema:
+        type: string
+    required_custom_resources:
+      description: >
+        List the custom resource kinds required to be supported in the target
+        environment. The list shall include those custom resource kinds which
+        are not delivered with the application.
+      required: false
+      type: list
+      entry_schema:
+        type: tosca.datatypes.asd.customResourceRequirement
+    cluster_labels:
+      description: >
+        This attribute allows to associate arbitrary labels to clusters.
+        These can indicate special infrastructure capabilities (e.g., NW acceleration,
+        GPU compute, etc.). The intent of these labels is to serve as a set of
+        values that can help in application placement decisions.
+        clusterLabels follow the Kubernetes label key-value-nomenclature
+        (https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/).
+        It is recommended that labels follow a standardized meaning e.g. for node
+        features (https://kubernetes-sigs.github.io/node-feature-discovery/v0.9/get-started/features.html#table-of-contents).
+        Example:
+        ClusterLabels
+          - feature.node.kubernetes.io/cpu-cpuid.AESNI: true
+      required: false
+      type: list
+      entry_schema:
+        type: string
+    required_plugin:
+      description: a list of the name of the required K8s plugin
+      required: false
+      type: list
+      entry_schema:
+        type: tosca.datatypes.asd.requiredPlugin
+
+tosca.datatypes.asd.customResourceRequirement:
+  version: 0.1
+  derived_from: tosca.datatypes.Root
+  description: >
+    kind: "Redis", apiVersion: "kubedb.com/v1alpha1"
+  properties:
+    kind:
+      description: "the name of the custom resource requirement"
+      type: string
+      required: true
+    api_version:
+      description: "the api version of the custom resource requirement"
+      type: string
+      required: true
+
+tosca.datatypes.asd.requiredPlugin:
+  version: 0.1
+  derived_from: tosca.datatypes.Root
+  description: "the required K8s plugin"
+  properties:
+    name:
+      description: "the name of the required K8s plugin"
+      type: string
+      required: true
+    version:
+      description: "the version of the required K8s plugin"
+      type: string
+      required: true
+
+tosca.dataTypes.tmf.milestoneJeopardyData:
+  derived_from: tosca.datatypes.Root
+  properties:
+    name:
+      type: string
+      required: true
+    message:
+      type: string
+      required: true
+    eventType:
+      type: string
+      required: true
+      valid_values: [milestone, jeopardy]
+    jeopardyType:
+      type: string
+      required: false
+      valid_values: [normal, critical, hazard]