Incorporate the ECOMP SDC Artefact Generator code
[aai/babel.git] / src / test / resources / ymlFiles / data.yml
diff --git a/src/test/resources/ymlFiles/data.yml b/src/test/resources/ymlFiles/data.yml
new file mode 100644 (file)
index 0000000..75e109b
--- /dev/null
@@ -0,0 +1,2241 @@
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+#metadata:
+#  filename: openecomp-heat/data.yml
+#  version: '1.0'
+  
+data_types:
+   
+    tosca.datatypes.Root:
+      description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+    integer:
+      derived_from: tosca.datatypes.Root
+
+    string:
+      derived_from: tosca.datatypes.Root
+
+    boolean:
+      derived_from: tosca.datatypes.Root
+
+    float:
+      derived_from: tosca.datatypes.Root
+
+    list:
+      derived_from: tosca.datatypes.Root
+
+    map:
+      derived_from: tosca.datatypes.Root
+
+    json:
+      derived_from: tosca.datatypes.Root
+         
+    scalar-unit:
+      derived_from: tosca.datatypes.Root
+
+    scalar-unit.size:
+      derived_from: scalar-unit
+
+    scalar-unit.time:
+      derived_from: scalar-unit
+
+    scalar-unit.frequency:
+      derived_from: scalar-unit
+
+    tosca.datatypes.Credential: 
+      derived_from: tosca.datatypes.Root
+      properties: 
+        protocol: 
+          type: string
+          required: false
+        token_type: 
+          type: string
+          default: password
+        token: 
+          type: string
+        keys:
+          type: map
+          required: false
+          entry_schema:
+            type: string
+        user:
+          type: string
+          required: false
+
+    tosca.datatypes.TimeInterval: 
+      derived_from: tosca.datatypes.Root
+      properties:
+        start_time: 
+          type: timestamp
+          required: true
+        end_time: 
+          type: timestamp
+          required: true
+
+    tosca.datatypes.network.NetworkInfo:
+      derived_from: tosca.datatypes.Root
+      properties:  
+        network_name: 
+          type: string
+        network_id: 
+          type: string
+        addresses:
+          type: list
+          entry_schema:
+            type: string
+
+    tosca.datatypes.network.PortInfo: 
+      derived_from: tosca.datatypes.Root
+      properties:  
+        port_name: 
+          type: string
+        port_id: 
+          type: string
+        network_id: 
+          type: string
+        mac_address: 
+          type: string
+        addresses:
+          type: list
+          entry_schema:
+            type: string
+
+    tosca.datatypes.network.PortDef:
+      derived_from: integer
+      constraints: 
+        - in_range: [ 1, 65535 ]
+
+    tosca.datatypes.network.PortSpec: 
+      derived_from: tosca.datatypes.Root
+      properties:  
+        protocol: 
+          type: string
+          required: true
+          default: tcp
+          constraints:
+            - valid_values: [ udp, tcp, igmp ]
+        target:  
+          type: tosca.datatypes.network.PortDef
+        target_range:
+          type: range 
+          constraints:
+            - in_range: [ 1, 65535 ]
+        source:
+          type: tosca.datatypes.network.PortDef
+        source_range:
+          type: range
+          constraints:
+            - in_range: [ 1, 65535 ]
+
+    ###################new Data Types Onboarding Integration##########################
+
+    org.openecomp.datatypes.heat.network.AddressPair:
+      derived_from: tosca.datatypes.Root
+      description: MAC/IP address pairs
+      properties:
+        mac_address:
+          type: string
+          description: MAC address
+          required: false
+          status: SUPPORTED
+        ip_address:
+          type: string
+          description: IP address
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.network.subnet.HostRoute:
+      derived_from: tosca.datatypes.Root
+      description: Host route info for the subnet
+      properties:
+        destination:
+          type: string
+          description: The destination for static route
+          required: false
+          status: SUPPORTED
+        nexthop:
+          type: string
+          description: The next hop for the destination
+          required: false
+          status: SUPPORTED
+          
+    org.openecomp.datatypes.heat.network.AllocationPool:
+      derived_from: tosca.datatypes.Root
+      description: The start and end addresses for the allocation pool
+      properties:
+        start:
+          type: string
+          description: Start address for the allocation pool
+          required: false
+          status: SUPPORTED
+        end:
+          type: string
+          description: End address for the allocation pool
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.network.neutron.Subnet:
+      derived_from: tosca.datatypes.Root
+      description: A subnet represents an IP address block that can be used for assigning IP addresses to virtual instances
+      properties:
+        tenant_id:
+          type: string
+          description: The ID of the tenant who owns the network
+          required: false
+          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
+        ipv6_address_mode:
+          type: string
+          description: IPv6 address mode
+          required: false
+          status: SUPPORTED
+          constraints:
+          - valid_values:
+            - dhcpv6-stateful
+            - dhcpv6-stateless
+            - slaac
+        ipv6_ra_mode:
+          type: string
+          description: IPv6 RA (Router Advertisement) mode
+          required: false
+          status: SUPPORTED
+          constraints:
+          - valid_values:
+            - dhcpv6-stateful
+            - dhcpv6-stateless
+            - slaac
+        value_specs:
+          type: map
+          description: Extra parameters to include in the request
+          required: false
+          default: {
+            }
+          status: SUPPORTED
+          entry_schema:
+            type: string
+        allocation_pools:
+           type: list
+           description: The start and end addresses for the allocation pools
+           required: false
+           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
+        dns_nameservers:
+          type: list
+          description: A specified set of DNS name servers to be used
+          required: false
+          default: [
+            ]
+          status: SUPPORTED
+          entry_schema:
+            type: string     
+        host_routes:
+          type: list
+          description: The gateway IP address
+          required: false
+          status: SUPPORTED
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.subnet.HostRoute
+        ip_version:
+          type: integer
+          description: The gateway IP address
+          required: false
+          default: 4
+          status: SUPPORTED
+          constraints:
+          - valid_values:
+            - '4'
+            - '6'
+        name:
+          type: string
+          description: The name of the subnet
+          required: false
+          status: SUPPORTED
+        prefixlen:
+          type: integer
+          description: Prefix length for subnet allocation from subnet pool
+          required: false
+          status: SUPPORTED
+          constraints:
+          - greater_or_equal: 0
+        cidr:
+          type: string
+          description: The CIDR
+          required: false
+          status: SUPPORTED
+        gateway_ip:
+          type: string
+          description: The gateway IP address
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
+      derived_from: tosca.datatypes.Root
+      description: Nova server network expand properties for port
+      properties:
+        port_security_enabled:
+          type: boolean
+          description: Flag to enable/disable port security on the port
+          required: false
+          status: SUPPORTED
+        mac_address:
+          type: string
+          description: MAC address to give to this port
+          required: false
+          status: SUPPORTED
+        admin_state_up:
+          type: boolean
+          description: The administrative state of this port
+          required: false
+          default: true
+          status: SUPPORTED
+        qos_policy:
+          type: string
+          description: The name or ID of QoS policy to attach to this port
+          required: false
+          status: SUPPORTED
+        allowed_address_pairs:
+          type: list
+          description: Additional MAC/IP address pairs allowed to pass through the port
+          required: false
+          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
+          constraints:
+          - valid_values:
+            - macvtap
+            - direct
+            - normal
+        value_specs:
+          type: map
+          description: Extra parameters to include in the request
+          required: false
+          default: {
+            }
+          status: SUPPORTED
+          entry_schema:
+            type: string
+
+    org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
+      derived_from: tosca.datatypes.network.NetworkInfo
+      description: Network addresses with corresponding port id
+      properties:
+        port_id:
+          type: string
+          description: Port id
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.neutron.port.FixedIps:
+      derived_from: tosca.datatypes.Root
+      description: subnet/ip_address
+      properties:
+        subnet:
+          type: string
+          description: Subnet in which to allocate the IP address for this port
+          required: false
+          status: SUPPORTED
+        ip_address:
+          type: string
+          description: IP address desired in the subnet for this port
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.FileInfo:
+      derived_from: tosca.datatypes.Root
+      description: Heat File Info
+      properties:
+        file:
+          type: string
+          description: The required URI string (relative or absolute) which can be used to locate the file
+          required: true
+          status: SUPPORTED
+        file_type:
+          type: string
+          description: The type of the file
+          required: true
+          status: SUPPORTED
+          constraints:
+          - valid_values:
+            - base
+            - env
+            - volume
+            - network
+
+    org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
+        derived_from: tosca.datatypes.Root
+        description: source and destination port pairs
+        properties:
+          start_port:
+            type: string
+            description: Start port
+            required: false
+            status: SUPPORTED
+          end_port:
+            type: string
+            description: End port
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrail.network.rule.Rule:
+        derived_from: tosca.datatypes.Root
+        description: policy rule
+        properties:
+          src_ports:
+            type: list
+            description: Source ports
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+          protocol:
+            type: string
+            description: Protocol
+            required: false
+            status: SUPPORTED
+          dst_addresses:
+            type: list
+            description: Destination addresses
+            required: false
+            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
+          dst_ports:
+            type: list
+            description: Destination ports
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+          src_addresses:
+            type: list
+            description: Source addresses
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
+          direction:
+            type: string
+            description: Direction
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
+        derived_from: tosca.datatypes.Root
+        description: list of policy rules
+        properties:
+          policy_rule:
+            type: list
+            description: Contrail network rule
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
+
+    org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
+        derived_from: tosca.datatypes.Root
+        description: source and destination addresses
+        properties:
+          virtual_network:
+            type: string
+            description: Virtual network
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
+        derived_from: tosca.datatypes.Root
+        description: Rules Pairs
+        properties:
+          remote_group_id:
+            type: string
+            description: The remote group ID to be associated with this security group rule
+            required: false
+            status: SUPPORTED
+          protocol:
+            type: string
+            description: The protocol that is matched by the security group rule
+            required: false
+            status: SUPPORTED
+            constraints:
+            - valid_values:
+              - tcp
+              - udp
+              - icmp
+          ethertype:
+            type: string
+            description: Ethertype of the traffic
+            required: false
+            default: IPv4
+            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. '
+            required: false
+            status: SUPPORTED
+            constraints:
+            - in_range:
+              - 0
+              - 65535
+          remote_ip_prefix:
+            type: string
+            description: The remote IP prefix (CIDR) to be associated with this security group rule
+            required: false
+            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
+            constraints:
+            - valid_values:
+              - remote_ip_prefix
+              - remote_group_id
+          direction:
+            type: string
+            description: The direction in which the security group rule is applied
+            required: false
+            default: ingress
+            status: SUPPORTED
+            constraints:
+            - valid_values:
+              - egress
+              - ingress
+          port_range_min:
+            type: integer
+            description: The minimum port number in the range that is matched by the security group rule.
+            required: false
+            status: SUPPORTED
+            constraints:
+            - in_range:
+              - 0
+              - 65535
+
+    org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
+        derived_from: tosca.datatypes.Root
+        description: Substitution Filter
+        properties:
+          substitute_service_template:
+            type: string
+            description: Substitute Service Template
+            required: true
+            status: SUPPORTED
+          index_value:
+            type: integer
+            description: Index value of the substitution service template runtime instance
+            required: false
+            default: 0
+            status: SUPPORTED
+            constraints:
+            - greater_or_equal: 0
+          count:
+            type: string
+            description: Count
+            required: false
+            default: 1
+            status: SUPPORTED
+          scaling_enabled:
+            type: boolean
+            description: Indicates whether service scaling is enabled
+            required: false
+            default: true
+            status: SUPPORTED
+          mandatory:
+            type: boolean
+            description: Mandatory
+            required: false
+            default: true
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
+        derived_from: tosca.datatypes.Root
+        description: network policy refs data sequence
+        properties:
+          network_policy_refs_data_sequence_major:
+            type: integer
+            description: Network Policy ref data sequence Major
+            required: false
+            status: SUPPORTED
+          network_policy_refs_data_sequence_minor:
+            type: integer
+            description: Network Policy ref data sequence Minor
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
+        derived_from: tosca.datatypes.Root
+        description: network policy refs data
+        properties:
+          network_policy_refs_data_sequence:
+            type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
+            description: Network Policy ref data sequence
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
+        derived_from: tosca.datatypes.Root
+        description: Network Ipam Ref Data Subnet
+        properties:
+          network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+            type: string
+            description: Network ipam refs data ipam subnets ip prefix len
+            required: false
+            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
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
+        derived_from: tosca.datatypes.Root
+        description: Network Ipam Ref Data Subnet List
+        properties:
+          network_ipam_refs_data_ipam_subnets_subnet:
+            type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
+            description: Network ipam refs data ipam subnets
+            required: false
+            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
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
+        derived_from: tosca.datatypes.Root
+        description: Network Ipam Ref Data
+        properties:
+          network_ipam_refs_data_ipam_subnets:
+            type: list
+            description: Network ipam refs data ipam subnets
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
+        derived_from: tosca.datatypes.Root
+        description: source addresses
+        properties:
+          network_policy_entries_policy_rule_src_addresses_virtual_network:
+            type: string
+            description: Source addresses Virtual network
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
+        derived_from: tosca.datatypes.Root
+        description: destination addresses
+        properties:
+          network_policy_entries_policy_rule_dst_addresses_virtual_network:
+            type: string
+            description: Destination addresses Virtual network
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
+        derived_from: tosca.datatypes.Root
+        description: destination port pairs
+        properties:
+          network_policy_entries_policy_rule_dst_ports_start_port:
+            type: string
+            description: Start port
+            required: false
+            status: SUPPORTED
+          network_policy_entries_policy_rule_dst_ports_end_port:
+            type: string
+            description: End port
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
+        derived_from: tosca.datatypes.Root
+        description: source port pairs
+        properties:
+          network_policy_entries_policy_rule_src_ports_start_port:
+            type: string
+            description: Start port
+            required: false
+            status: SUPPORTED
+          network_policy_entries_policy_rule_src_ports_end_port:
+            type: string
+            description: End port
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
+        derived_from: tosca.datatypes.Root
+        description: Action List
+        properties:
+          network_policy_entries_policy_rule_action_list_simple_action:
+            type: string
+            description: Simple Action
+            required: false
+            status: SUPPORTED
+          network_policy_entries_policy_rule_action_list_apply_service:
+            type: list
+            description: Apply Service
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: string
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
+        derived_from: tosca.datatypes.Root
+        description: policy rule
+        properties:
+          network_policy_entries_policy_rule_dst_addresses:
+            type: list
+            description: Destination addresses
+            required: false
+            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
+            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
+          network_policy_entries_policy_rule_src_addresses:
+            type: list
+            description: Source addresses
+            required: false
+            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
+          network_policy_entries_policy_rule_src_ports:
+            type: list
+            description: Source ports
+            required: false
+            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
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
+        derived_from: tosca.datatypes.Root
+        description: list of policy rules
+        properties:
+          network_policy_entries_policy_rule:
+            type: list
+            description: Contrail network rule
+            required: false
+            status: SUPPORTED
+            entry_schema:
+              type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
+
+    org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
+        derived_from: tosca.datatypes.Root
+        description: static route
+        properties:
+          prefix:
+            type: string
+            description: Route prefix
+            required: false
+            status: SUPPORTED
+          next_hop:
+            type: string
+            description: Next hop
+            required: false
+            status: SUPPORTED
+          next_hop_type:
+            type: string
+            description: Next hop type
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.network.contrail.AddressPair:
+        derived_from: tosca.datatypes.Root
+        description: Address Pair
+        properties:
+          address_mode:
+            type: string
+            description: Address mode active-active or active-standy
+            required: false
+            status: SUPPORTED
+            constraints:
+            - valid_values:
+              - active-active
+              - active-standby
+          prefix:
+            type: string
+            description: IP address prefix
+            required: false
+            status: SUPPORTED
+          mac_address:
+            type: string
+            description: Mac address
+            required: false
+            status: SUPPORTED
+
+    org.openecomp.datatypes.heat.network.contrail.InterfaceData:
+        derived_from: tosca.datatypes.Root
+        description: Interface Data
+        properties:
+          static_routes:
+            type: list
+            description: An ordered list of static routes to be added to this interface
+            required: false
+            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
+          allowed_address_pairs:
+            type: list
+            description: List of allowed address pair for this interface
+            required: false
+            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
+
+    # Duplicate type - removed after investigating with Renana and Shiri Amichai from Amdocs
+    # org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
+    #     derived_from: tosca.datatypes.Root
+    #     description: Virtual Machine Interface Properties.
+    #     properties:
+    #       virtual_machine_interface_properties_service_interface_type:
+    #         type: string
+    #         description: Service Interface Type.
+    #         required: false
+    #         status: SUPPORTED
+
+    org.openecomp.datatypes.Root:
+      derived_from: tosca.datatypes.Root
+      description: >
+        The ECOMP root Data Type all other Data Types derive from
+      properties:
+        supplemental_data:
+          type: map
+          entry_schema:
+            description: > 
+               A placeholder for missing properties that would be included in future ecomp model versions.
+               fromat <key>:<value>
+            type: string
+
+    org.openecomp.datatypes.AssignmentRequirements:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        is_required:
+          description: |
+            "true" indicates that assignment is required
+          type: boolean
+          default: false
+          required: true
+        count:
+          description: number of assignments required
+          type: integer
+          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 
+        dhcp_enabled:
+          type: boolean
+          required: false
+          description: \"true\" indicates the network has 1 or more policies
+        ip_version:
+          type: integer
+          constraints:
+            - valid_values: [4,6]
+          required: true
+          description: The IP version of the subnet
+        cidr_mask:
+          type: integer
+          required: true
+          description: The default subnet CIDR mask 
+        min_subnets_count:
+          type: integer
+          default: 1
+          required: true
+          description: Quantity of subnets that must be initially assigned
+
+    org.openecomp.datatypes.network.IPv4SubnetAssignments:
+      derived_from: org.openecomp.datatypes.network.SubnetAssignments
+      properties:
+        use_ipv4:
+          type: boolean
+          required: true
+          description: Indicates IPv4 subnet assignments
+
+    org.openecomp.datatypes.network.IPv6SubnetAssignments:
+      derived_from: org.openecomp.datatypes.network.SubnetAssignments
+      properties:
+        use_ipv6:
+          type: boolean
+          required: true
+          description: Indicates IPv6 subnet assignments
+
+    org.openecomp.datatypes.network.NetworkAssignments:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_generated_network_assignment:
+          type: boolean
+          required: true
+          default: false
+          description: >
+            \"true\" indicates that the network assignments will be auto-generated by ECOMP
+            \"false\" indicates operator-supplied Network assignments file upload is required (e.g. VID will present prompt to operator to upload operator-supplied Network assignments file).
+        is_shared_network:
+          type: boolean
+          required: true
+          description: \"true\" means this network is shared by multiple Openstack tenants
+        is_external_network:
+          type: boolean
+          required: true
+          default: false
+          description: >
+            \"true\" means this Contrail external network
+        ipv4_subnet_default_assignment:
+          type: org.openecomp.datatypes.network.IPv4SubnetAssignments
+          required: true
+          description: IPv4 defualt subnet assignments
+        ipv6_subnet_default_assignment:
+          type: org.openecomp.datatypes.network.IPv6SubnetAssignments
+          required: true
+          description: IPv6 defualt subnet assignments
+
+    org.openecomp.datatypes.network.ProviderNetwork:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        is_provider_network:
+          type: boolean
+          required: true
+          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"]
+          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)
+        numa:
+          type: string
+          required: false
+          constraints:
+            - valid_values: ["NUMA 0", "NUMA 1"]
+          description: >
+            PNIC instance within the NUMA processor cluster
+            PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
+        pnic_instance:
+          type: integer
+          required: false
+          description: PNIC instance within the NUMA processor cluster
+
+    org.openecomp.datatypes.network.NetworkFlows:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        is_network_policy:
+          type: boolean
+          required: false
+          default: false
+          description: \"true\" indicates the network has 1 or more policies
+        network_policy:
+          type: string
+          required: false
+          description: "Identifies the specific Cloud network policy that must be applied to this network (source: from Policy Manager)."
+        is_bound_to_vpn:
+          type: boolean
+          required: false
+          default: false
+          description: \"true\" indicates the network has 1 or more vpn bindings
+        vpn_binding:
+          type: string
+          required: false
+          description: "Identifies the specific VPN Binding entry in A&AI that must be applied when creating this network (source: A&AI)"
+
+    org.openecomp.datatypes.network.VlanRequirements:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        vlan_range_plan:
+          type: string
+          required: true
+          description: reference to a vlan range plan
+        vlan_type:
+          type: string
+          required: true
+          constraints:
+            - valid_values: ["c-tag", "s-tag"]
+          description: identifies the vlan type (e.g., c-tag)
+        vlan_count:
+          type: integer
+          required: true
+          description: identifies the number of vlan tags to assign to the CP from the plan
+
+    org.openecomp.datatypes.network.IpRequirements:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ip_version:
+          type: integer
+          required: true
+          constraints:
+            - valid_values:
+              - 4
+              - 6
+        ip_count:
+          description: identifies the number of ip address to assign to the CP from the plan
+          type: integer
+          required: false
+        floating_ip_count:
+          type: integer
+          required: false
+        subnet_role:
+          type: string
+          required: false
+        assingment_method:
+          type: string
+          required: true
+          constraints:
+            - valid_values:
+              - fixed
+              - dhcp
+        dhcp_enabled:
+          type: boolean
+          required: false
+        ip_count_required:
+          description: identifies the number of ip address to assign to the CP from the plan
+          type: org.openecomp.datatypes.AssignmentRequirements
+          required: false
+        floating_ip_count_required:
+          type: org.openecomp.datatypes.AssignmentRequirements
+          required: false 
+
+    org.openecomp.datatypes.network.MacAssignments:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        mac_range_plan:
+          type: string
+          required: true
+          description: reference to a MAC address range plan
+        mac_count:
+          type: integer
+          required: true
+          description: identifies the number of MAC addresses to assign to the CP from the plan
+
+    org.openecomp.datatypes.EcompHoming:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_selected_instance_node_target:
+          type: boolean
+          required: true
+          default: false
+          description: >
+            \"true\" indicates that the target deployment node for this instance will be auto-selected by ECOMP
+            \"false\" indicates operator-supplied instance target deployment node required (e.g. VID will present a prompt to operator and collect the
+            operator-selected target node for the deployment of this Network instance).
+        homing_policy:
+          type: string
+          required: false
+          description: Referenc to a service level homing policy that ECOMP will use for instance deployment target node
+        instance_node_target:
+          type: string
+          required: false
+          description: Instance target deployment node
+
+    org.openecomp.datatypes.EcompNaming:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_generated_naming:
+          type: boolean
+          required: true
+          default: true
+          description: >
+            \"true\" indicates that the name for the instance will be auto-generated by ECOMP.
+            \"false\" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+        naming_policy:
+          type: string
+          required: false
+          description: Referenc to naming policy that ECOMP will use when the name is auto-generated
+
+    org.openecomp.datatypes.network.MacRequirements:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        mac_range_plan:
+          description: reference to a MAC address range plan
+          type: string
+          required: false
+        mac_count:
+          description: identifies the number of MAC addresses to assign to the CP from the plan
+          type: integer
+          required: false
+        mac_count_required:
+          description: identifies the number of MAC addresses to assign to the CP from the plan
+          type: org.openecomp.datatypes.AssignmentRequirements
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pair IP.
+      properties:
+        ip_prefix:
+          type: string
+          description: IP Prefix.
+          required: false
+          status: SUPPORTED
+        ip_prefix_len:
+          type: integer
+          description: IP Prefix Len.
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Mac Address.
+      properties:
+        mac_address:
+          type: list
+          description: Mac Addresses List.
+          required: false
+          status: SUPPORTED
+          entry_schema:
+            type: string
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface VLAN Properties.
+      properties:
+        sub_interface_vlan_tag:
+          type: string
+          description: Sub Interface VLAN Tag.
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pair.
+      properties:
+        address_mode:
+          type: string
+          description: Address Mode.
+          required: false
+          status: SUPPORTED
+        ip:
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
+          description: IP.
+          required: false
+          status: SUPPORTED
+        mac:
+          type: string
+          description: Mac.
+          required: false
+          status: SUPPORTED
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pairs.
+      properties:
+        allowed_address_pair:
+          type: list
+          description: Addresses pair List.
+          required: false
+          status: SUPPORTED
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
+
+    org.openecomp.datatypes.Naming:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+          ecomp_generated_naming:
+            description: |
+                "true" indicates that the name for the instance will be auto-generated by ECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+            type: boolean
+            default: true
+            required: true
+          naming_policy:
+            description: Reference to naming policy that ECOMP will use when the name is auto-generated
+            type: string
+            required: false
+          instance_name:
+            description: indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+            type: string
+            required: false
+          port_id:
+            description: The unique ID for the network port generated by the network provider.
+            type: string
+            required: false
+          network_id:
+            description: The unique ID for the network.
+            type: string
+            required: false
+          mac_address:
+            description: The unique media access control address (MAC address) assigned to the port.
+            type: string
+            required: false
+          addresses:
+            description: The list of IP address(es) assigned to the port.
+            type: list
+            entry_schema:
+              type: string
+            required: false
+
+    tosca.datatypes.Credential:
+      derived_from: tosca.datatypes.Root
+      description: The Credential type is a complex TOSCA data Type used when describing authorization credentials used to access network accessible resources.
+      properties:
+        protocol:
+          description: The optional protocol name.
+          type: string
+          required: false
+        token_type:
+          description: The required token type.
+          type: string
+          default: password
+        token:
+          description: The required token used as a credential for authorization or access to a networked resource.
+          type: string
+        keys:
+          description: The optional list of protocol-specific keys or assertions.
+          type: map
+          entry_schema:
+            type: string
+          required: false
+        user:
+          description: The optional user (name or ID) used for non-token based credentials.
+          type: string
+          required: false
+
+    org.openecomp.datatypes.heat.network.AddressPair:
+      derived_from: tosca.datatypes.Root
+      description: MAC/IP address pairs
+      properties:
+        mac_address:
+          description: MAC address
+          type: string
+          status: supported
+          required: false
+        ip_address:
+          description: IP address
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
+      derived_from: tosca.datatypes.Root
+      description: Nova server network expand properties for port
+      properties:
+        port_security_enabled:
+          description: Flag to enable/disable port security on the port
+          type: boolean
+          status: supported
+          required: false
+        mac_address:
+          description: MAC address to give to this port
+          type: string
+          status: supported
+          required: false
+        admin_state_up:
+          description: The administrative state of this port
+          type: boolean
+          status: supported
+          default: true
+          required: false
+        qos_policy:
+          description: The name or ID of QoS policy to attach to this port
+          type: string
+          status: supported
+          required: false
+        allowed_address_pairs:
+          description: Additional MAC/IP address pairs allowed to pass through the port
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.AddressPair
+          required: false
+        binding:vnic_type:
+          description: The vnic type to be bound on the neutron port
+          type: string
+          status: supported
+          required: false
+          constraints:
+          - valid_values:
+            - macvtap
+            - direct
+            - normal
+        value_specs:
+          description: Extra parameters to include in the request
+          type: map
+          status: supported
+          entry_schema:
+            type: string
+          default: {}
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
+      derived_from: tosca.datatypes.Root
+      description: source port pairs
+      properties:
+        network_policy_entries_policy_rule_src_ports_start_port:
+          description: Start port
+          type: string
+          status: supported
+          required: false
+        network_policy_entries_policy_rule_src_ports_end_port:
+          description: End port
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pair.
+      properties:
+        address_mode:
+          description: Address Mode.
+          type: string
+          status: supported
+          required: false
+        ip:
+          description: IP.
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
+          status: supported
+          required: false
+        mac:
+          description: Mac.
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
+      derived_from: tosca.datatypes.Root
+      description: destination addresses
+      properties:
+        network_policy_entries_policy_rule_dst_addresses_virtual_network:
+          description: Destination addresses Virtual network
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
+      derived_from: tosca.datatypes.Root
+      description: policy rule
+      properties:
+        network_policy_entries_policy_rule_dst_addresses:
+          description: Destination addresses
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork
+          required: false
+        network_policy_entries_policy_rule_dst_ports:
+          description: Destination ports
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs
+          required: false
+        network_policy_entries_policy_rule_protocol:
+          description: Protocol
+          type: string
+          status: supported
+          required: false
+        network_policy_entries_policy_rule_src_addresses:
+          description: Source addresses
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork
+          required: false
+        network_policy_entries_policy_rule_direction:
+          description: Direction
+          type: string
+          status: supported
+          required: false
+        network_policy_entries_policy_rule_src_ports:
+          description: Source ports
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs
+          required: false
+        network_policy_entries_policy_rule_action_list:
+          description: Action list
+          type: org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
+      derived_from: tosca.datatypes.Root
+      description: Rules Pairs
+      properties:
+        remote_group_id:
+          description: The remote group ID to be associated with this security group rule
+          type: string
+          status: supported
+          required: false
+        protocol:
+          description: The protocol that is matched by the security group rule
+          type: string
+          status: supported
+          required: false
+          constraints:
+          - valid_values:
+            - tcp
+            - udp
+            - icmp
+        ethertype:
+          description: Ethertype of the traffic
+          type: string
+          status: supported
+          default: IPv4
+          required: false
+          constraints:
+          - valid_values:
+            - IPv4
+            - IPv6
+        port_range_max:
+          description: 'The maximum port number in the range that is matched by the          security group rule. '
+          type: integer
+          status: supported
+          required: false
+          constraints:
+          - in_range:
+            - 0
+            - 65535
+        remote_ip_prefix:
+          description: The remote IP prefix (CIDR) to be associated with this security group rule
+          type: string
+          status: supported
+          required: false
+        remote_mode:
+          description: Whether to specify a remote group or a remote IP prefix
+          type: string
+          status: supported
+          default: remote_ip_prefix
+          required: false
+          constraints:
+          - valid_values:
+            - remote_ip_prefix
+            - remote_group_id
+        direction:
+          description: The direction in which the security group rule is applied
+          type: string
+          status: supported
+          default: ingress
+          required: false
+          constraints:
+          - valid_values:
+            - egress
+            - ingress
+        port_range_min:
+          description: The minimum port number in the range that is matched by the security group rule.
+          type: integer
+          status: supported
+          required: false
+          constraints:
+          - in_range:
+            - 0
+            - 65535
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
+      derived_from: tosca.datatypes.Root
+      description: Network Ipam Ref Data Subnet
+      properties:
+        network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+          description: Network ipam refs data ipam subnets ip prefix len
+          type: string
+          status: supported
+          required: false
+        network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+          description: Network ipam refs data ipam subnets ip prefix
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface VLAN Properties.
+      properties:
+        sub_interface_vlan_tag:
+          description: Sub Interface VLAN Tag.
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pair IP.
+      properties:
+        ip_prefix:
+          description: IP Prefix.
+          type: string
+          status: supported
+          required: false
+        ip_prefix_len:
+          description: IP Prefix Len.
+          type: integer
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
+      derived_from: tosca.datatypes.Root
+      description: source addresses
+      properties:
+        network_policy_entries_policy_rule_src_addresses_virtual_network:
+          description: Source addresses Virtual network
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
+      derived_from: tosca.datatypes.Root
+      description: Action List
+      properties:
+        network_policy_entries_policy_rule_action_list_simple_action:
+          description: Simple Action
+          type: string
+          status: supported
+          required: false
+        network_policy_entries_policy_rule_action_list_apply_service:
+          description: Apply Service
+          type: list
+          status: supported
+          entry_schema:
+            type: string
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
+      derived_from: tosca.datatypes.Root
+      description: Network Ipam Ref Data
+      properties:
+        network_ipam_refs_data_ipam_subnets:
+          description: Network ipam refs data ipam subnets
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
+          required: false
+
+    org.openecomp.datatypes.heat.FileInfo:
+      derived_from: tosca.datatypes.Root
+      description: Heat File Info
+      properties:
+        file:
+          description: The required URI string (relative or absolute) which can be used to locate the file
+          type: string
+          status: supported
+          required: true
+        file_type:
+          description: The type of the file
+          type: string
+          status: supported
+          required: true
+          constraints:
+          - valid_values:
+            - base
+            - env
+            - volume
+            - network
+
+    org.openecomp.datatypes.heat.network.contrail.InterfaceData:
+      derived_from: tosca.datatypes.Root
+      description: Interface Data
+      properties:
+        static_routes:
+          description: An ordered list of static routes to be added to this interface
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
+          required: false
+        virtual_network:
+          description: Virtual Network for this interface
+          type: string
+          status: supported
+          required: true
+        allowed_address_pairs:
+          description: List of allowed address pair for this interface
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.contrail.AddressPair
+          required: false
+        ip_address:
+          description: IP for this interface
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
+      derived_from: tosca.datatypes.Root
+      description: network policy refs data
+      properties:
+        network_policy_refs_data_sequence:
+          description: Network Policy ref data sequence
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
+      derived_from: tosca.datatypes.Root
+      description: destination port pairs
+      properties:
+        network_policy_entries_policy_rule_dst_ports_start_port:
+          description: Start port
+          type: string
+          status: supported
+          required: false
+        network_policy_entries_policy_rule_dst_ports_end_port:
+          description: End port
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.network.AllocationPool:
+      derived_from: tosca.datatypes.Root
+      description: The start and end addresses for the allocation pool
+      properties:
+        start:
+          description: Start address for the allocation pool
+          type: string
+          status: supported
+          required: false
+        end:
+          description: End address for the allocation pool
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
+      derived_from: tosca.datatypes.Root
+      description: source and destination port pairs
+      properties:
+        start_port:
+          description: Start port
+          type: string
+          status: supported
+          required: false
+        end_port:
+          description: End port
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
+      derived_from: tosca.datatypes.Root
+      description: source and destination addresses
+      properties:
+        virtual_network:
+          description: Virtual network
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
+      derived_from: tosca.datatypes.Root
+      description: list of policy rules
+      properties:
+        policy_rule:
+          description: Contrail network rule
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
+          required: false
+
+    org.openecomp.datatypes.heat.network.contrail.AddressPair:
+      derived_from: tosca.datatypes.Root
+      description: Address Pair
+      properties:
+        address_mode:
+          description: Address mode active-active or active-standy
+          type: string
+          status: supported
+          required: false
+          constraints:
+          - valid_values:
+            - active-active
+            - active-standby
+        prefix:
+          description: IP address prefix
+          type: string
+          status: supported
+          required: false
+        mac_address:
+          description: Mac address
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Mac Address.
+      properties:
+        mac_address:
+          description: Mac Addresses List.
+          type: list
+          status: supported
+          entry_schema:
+            type: string
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
+      derived_from: tosca.datatypes.Root
+      description: Network Ipam Ref Data Subnet List
+      properties:
+        network_ipam_refs_data_ipam_subnets_subnet:
+          description: Network ipam refs data ipam subnets
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
+          status: supported
+          required: false
+        network_ipam_refs_data_ipam_subnets_addr_from_start:
+          description: Network ipam refs data ipam subnets addr from start
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
+      derived_from: tosca.datatypes.Root
+      description: list of policy rules
+      properties:
+        network_policy_entries_policy_rule:
+          description: Contrail network rule
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
+          required: false
+
+    org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
+      derived_from: tosca.datatypes.network.NetworkInfo
+      description: Network addresses with corresponding port id
+      properties:
+        port_id:
+          description: Port id
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Sub Interface Address Pairs.
+      properties:
+        allowed_address_pair:
+          description: Addresses pair List.
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
+          required: false
+
+    org.openecomp.datatypes.heat.neutron.port.FixedIps:
+      derived_from: tosca.datatypes.Root
+      description: subnet/ip_address
+      properties:
+        subnet:
+          description: Subnet in which to allocate the IP address for this port
+          type: string
+          status: supported
+          required: false
+        ip_address:
+          description: IP address desired in the subnet for this port
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
+      derived_from: tosca.datatypes.Root
+      description: Virtual Machine Interface Properties.
+      properties:
+        service_interface_type:
+          description: Service Interface Type.
+          type: string
+          status: SUPPORTED
+          required: false
+
+    org.openecomp.datatypes.heat.network.subnet.HostRoute:
+      derived_from: tosca.datatypes.Root
+      description: Host route info for the subnet
+      properties:
+        destination:
+          description: The destination for static route
+          type: string
+          status: supported
+          required: false
+        nexthop:
+          description: The next hop for the destination
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
+      derived_from: tosca.datatypes.Root
+      description: static route
+      properties:
+        prefix:
+          description: Route prefix
+          type: string
+          status: supported
+          required: false
+        next_hop:
+          description: Next hop
+          type: string
+          status: supported
+          required: false
+        next_hop_type:
+          description: Next hop type
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.substitution.SubstitutionFiltering:
+      derived_from: tosca.datatypes.Root
+      description: Substitution Filter
+      properties:
+        substitute_service_template:
+          description: Substitute Service Template
+          type: string
+          status: supported
+          required: true
+        index_value:
+          description: Index value of the substitution service template runtime instance
+          type: integer
+          status: supported
+          default: 0
+          required: false
+          constraints:
+          - greater_or_equal: 0
+        count:
+          description: Count
+          type: float
+          status: supported
+          default: 1
+          required: false
+        scaling_enabled:
+          description: Indicates whether service scaling is enabled
+          type: boolean
+          status: supported
+          default: true
+          required: false
+        mandatory:
+          description: Mandatory
+          type: boolean
+          status: supported
+          default: true
+          required: false
+
+    org.openecomp.datatypes.heat.network.neutron.Subnet:
+      derived_from: tosca.datatypes.Root
+      description: A subnet represents an IP address block that can be used for assigning IP addresses to virtual instances
+      properties:
+        tenant_id:
+          description: The ID of the tenant who owns the network
+          type: string
+          status: supported
+          required: false
+        enable_dhcp:
+          description: Set to true if DHCP is enabled and false if DHCP is disabled
+          type: boolean
+          status: supported
+          default: true
+          required: false
+        ipv6_address_mode:
+          description: IPv6 address mode
+          type: string
+          status: supported
+          required: false
+          constraints:
+          - valid_values:
+            - dhcpv6-stateful
+            - dhcpv6-stateless
+            - slaac
+        ipv6_ra_mode:
+          description: IPv6 RA (Router Advertisement) mode
+          type: string
+          status: supported
+          required: false
+          constraints:
+          - valid_values:
+            - dhcpv6-stateful
+            - dhcpv6-stateless
+            - slaac
+        value_specs:
+          description: Extra parameters to include in the request
+          type: map
+          status: supported
+          entry_schema:
+            type: string
+          default: {}
+          required: false
+        allocation_pools:
+          description: The start and end addresses for the allocation pools
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.AllocationPool
+          required: false
+        subnetpool:
+          description: The name or ID of the subnet pool
+          type: string
+          status: supported
+          required: false
+        dns_nameservers:
+          description: A specified set of DNS name servers to be used
+          type: list
+          status: supported
+          entry_schema:
+            type: string
+          default: []
+          required: false
+        host_routes:
+          description: The gateway IP address
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.network.subnet.HostRoute
+          required: false
+        ip_version:
+          description: The gateway IP address
+          type: integer
+          status: supported
+          default: 4
+          required: false
+          constraints:
+          - valid_values:
+            - 4
+            - 6
+        name:
+          description: The name of the subnet
+          type: string
+          status: supported
+          required: false
+        prefixlen:
+          description: Prefix length for subnet allocation from subnet pool
+          type: integer
+          status: supported
+          required: false
+          constraints:
+          - greater_or_equal: 0
+        cidr:
+          description: The CIDR
+          type: string
+          status: supported
+          required: false
+        gateway_ip:
+          description: The gateway IP address
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrail.network.rule.Rule:
+      derived_from: tosca.datatypes.Root
+      description: policy rule
+      properties:
+        src_ports:
+          description: Source ports
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+          required: false
+        protocol:
+          description: Protocol
+          type: string
+          status: supported
+          required: false
+        dst_addresses:
+          description: Destination addresses
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
+          required: false
+        apply_service:
+          description: Service to apply
+          type: string
+          status: supported
+          required: false
+        dst_ports:
+          description: Destination ports
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+          required: false
+        src_addresses:
+          description: Source addresses
+          type: list
+          status: supported
+          entry_schema:
+            type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
+          required: false
+        direction:
+          description: Direction
+          type: string
+          status: supported
+          required: false
+
+    org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
+      derived_from: tosca.datatypes.Root
+      description: network policy refs data sequence
+      properties:
+        network_policy_refs_data_sequence_major:
+          description: Network Policy ref data sequence Major
+          type: integer
+          status: supported
+          required: false
+        network_policy_refs_data_sequence_minor:
+          description: Network Policy ref data sequence Minor
+          type: integer
+          status: supported
+          required: false
+          
+    org.openecomp.datatypes.Naming:
+      derived_from: tosca.datatypes.Root 
+      description: Naming 
+      properties:
+        ecomp_generated_naming:
+          description: |
+            "true" indicates that the name for the instance will be auto-generated by ECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+          type: boolean
+          default: true
+          required: false
+          status: supported
+        naming_policy:
+          description: Reference to naming policy that ECOMP will use when the name is auto-generated
+          type: string
+          required: false
+          status: supported
+        instance_name:
+          description: Reference to naming policy that ECOMP will use when the name is auto-generated
+          type: string
+          required: false
+          status: supported
+    
+    org.openecomp.datatypes.EcompGeneratedNaming:
+      derived_from: org.openecomp.datatypes.Naming
+      description: Naming 
+      properties:
+        naming_policy:
+          description: Referenc to naming policy that ECOMP will use when the name is auto-generated
+          type: string
+          required: false
+                                  
+    org.openecomp.datatypes.UserDefinedNaming:
+      derived_from: org.openecomp.datatypes.Naming
+      description: Naming 
+      properties:
+        instance_name:
+          description: Reference to naming policy that ECOMP will use when the name is auto-generated
+          type: string
+          required: false
+
+    org.openecomp.datatypes.Root:
+      derived_from: tosca.datatypes.Root
+      description: >
+        The AT&T root Data Type all other Data Types derive from
+      properties:
+        supplemental_data:
+          type: map
+          entry_schema:
+            description: > 
+               A placeholder for missing properties that would be included in future ecomp model versions.
+               fromat <key>:<value>
+            type: string
+
+    org.openecomp.datatypes.EcompHoming:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_selected_instance_node_target:
+          type: boolean
+          required: true
+          default: false
+          description: >
+            "true" indicates that the target deployment node for this instance will be auto-selected by ECOMP
+            "false" indicates operator-supplied instance target deployment node required (e.g. VID will present a prompt to operator and collect the
+            operator-selected target node for the deployment of this Network instance).
+        homing_policy:
+          type: string
+          required: false
+          description: Referenc to a service level homing policy that ECOMP will use for instance deployment target node
+        instance_node_target:
+          type: string
+          required: false
+          description: Instance target deployment node
+
+    org.openecomp.datatypes.EcompNaming:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_generated_naming:
+          type: boolean
+          required: true
+          default: true
+          description: >
+            "true" indicates that the name for the instance will be auto-generated by ECOMP.
+            "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+        naming_policy:
+          type: string
+          required: false
+          description: Referenc to naming policy that ECOMP will use when the name is auto-generated
+    org.openecomp.datatypes.network.NetworkAssignments:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        ecomp_generated_network_assignment:
+          type: boolean
+          required: true
+          default: false
+          description: >
+            "true" indicates that the network assignments will be auto-generated by ECOMP
+            "false" indicates operator-supplied Network assignments file upload is required (e.g. VID will present prompt to operator to upload operator-supplied Network assignments file).
+        network_assignments_file:
+          type: string
+          required: false
+          description: Filename of the template that specifies all of the configurable name/value pairs of Network assignments in this Network model
+        multi_tenant:
+          type: boolean
+          required: true
+          default: true
+          description: true means this network is shared by multiple Openstack tenants
+        min_subnets_count:
+          type: integer
+          required: true
+          description: Quantity of subnets that must be initially assigned
+        ip_network_address_plan:
+          type: string
+          required: true
+          description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
+        vlan_network_address_plan:
+          type: string
+          required: true
+          description: Reference to VLAN or other address plan ID used to assign subnets to this network
+    org.openecomp.datatypes.network.PhysicalNetwork:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        provider_network:
+          type: boolean
+          required: true
+          description: true indicates that this a Neutron provider type of network
+        physical_network_name:
+          type: string
+          required: false
+          constraint:
+            - valid_values:
+               - Physnet-SRIOV-1
+               - Physnet-SRIOV-2
+               - Physnet-SRIOV-11
+               - Physnet-SRIOV-12
+          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)
+        numa:
+          type: string
+          required: false
+          constraint:
+            - valid_values:
+              - NUMA 0
+              - NUMA 1
+          description: >
+            PNIC instance within the NUMA processor cluster
+            PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
+        pnic_instance:
+          type: integer
+          required: false
+          description: PNIC instance within the NUMA processor cluster
+
+    org.openecomp.datatypes.network.NetworkFlows:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        is_network_policy:
+          type: boolean
+          required: false
+          default: false
+          description: true indicates the network has 1 or more policies
+        network_policy:
+          type: string
+          required: flase
+          description: Identifies the specific Cloud network policy that must be applied to this network (source - from Policy Manager)
+        vpn_binding:
+          type: string
+          required: false
+          description: Identifies the specific VPN Binding entry in A&AI that must be applied when creating this network (source - A&AI)
+
+    org.openecomp.datatypes.Artifact:
+      derived_from: org.openecomp.datatypes.Root
+      properties:
+        artifact_name:
+          type: string
+          required: true
+          description: Artifcat name 
+        artifact_type:
+          type: string
+          required: true
+          description: Artifcat type
+        artifact_uuid:
+          type: string
+          required: true
+          description: Artifcat UUID
+        artifact_checksum:
+          type: string
+          required: true
+          description: Artifact checksum
+        artifact_url:
+          type: string
+          required: true
+          description: Artifcay URL. Can also include only the file name
\ No newline at end of file