Generate ODL compliant swagger models from yang
[sdnc/northbound.git] / generic-resource-api / model / src / main / yang / GENERIC-RESOURCE-API.yang
diff --git a/generic-resource-api/model/src/main/yang/GENERIC-RESOURCE-API.yang b/generic-resource-api/model/src/main/yang/GENERIC-RESOURCE-API.yang
deleted file mode 100644 (file)
index 660b2f8..0000000
+++ /dev/null
@@ -1,3452 +0,0 @@
-module GENERIC-RESOURCE-API {\r
-\r
-   namespace "org:onap:sdnc:northbound:generic-resource";\r
-\r
-   prefix generic-resource-api;\r
-\r
-   import ietf-inet-types { prefix "inet"; revision-date "2013-07-15"; }\r
-\r
-   import ietf-yang-types { prefix yang; }\r
-\r
-   revision "2017-08-24" {\r
-     description\r
-        "ONAP Amsterdam version";\r
-   }\r
-\r
-   grouping service-model-infrastructure {\r
-      list service {\r
-         key "service-instance-id";\r
-         leaf service-instance-id {\r
-            description "Keep as M";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         uses service-data;\r
-         uses service-status;\r
-      }\r
-   }\r
-   grouping service-data {\r
-      container service-data {\r
-         uses service-operation-information;\r
-         uses service-topology;\r
-         uses service-level-oper-status;\r
-         container networks {\r
-            list network {\r
-               key "network-id";\r
-               leaf network-id {\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               container network-data {\r
-                  uses network-operation-information;\r
-                  uses network-topology;\r
-                  container network-provided-allotted-resources {\r
-                     leaf-list network-provided-ar-id {\r
-                        description "List of allotted resources using capacity from this network";\r
-                        type string;\r
-                        ordered-by user;\r
-                     }\r
-                  }\r
-                  uses network-level-oper-status;\r
-               }\r
-            }\r
-         }\r
-         container pnfs {\r
-            list pnf {\r
-               key "pnf-id";\r
-               leaf pnf-id {\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               container pnf-data {\r
-                  uses pnf-operation-information;\r
-                  uses pnf-topology;\r
-                  uses pnf-level-oper-status;\r
-               }\r
-            }\r
-         }\r
-         container vnfs {\r
-            list vnf {\r
-               key "vnf-id";\r
-               leaf vnf-id {\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               container vnf-data {\r
-                  uses vnf-operation-information;\r
-                  uses vnf-topology;\r
-                  container vnf-network-collections {\r
-                     uses vnf-network-collection;\r
-                  }\r
-                  container vnf-sub-interface-groups {\r
-                     uses vnf-sub-interface-group;\r
-                  }\r
-                  container vnf-provided-allotted-resources {\r
-                     leaf-list vnf-provided-ar-id {\r
-                        description "List of allotted resources using capacity from this vnf";\r
-                        type string;\r
-                        ordered-by user;\r
-                     }\r
-                  }\r
-                  uses vnf-level-oper-status;\r
-                  container vf-modules {\r
-                     list vf-module {\r
-                        key "vf-module-id";\r
-                        leaf vf-module-id {\r
-                           type string;\r
-                           mandatory true;\r
-                        }\r
-                        container vf-module-data {\r
-                           uses vf-module-operation-information;\r
-                           uses vf-module-topology;\r
-                           uses vf-module-level-oper-status;\r
-                        }\r
-                     }\r
-                  }\r
-               }\r
-            }\r
-         }\r
-         container consumed-allotted-resources {\r
-            list consumed-allotted-resource {\r
-               key "allotted-resource-id";\r
-               uses allotted-resource-info;\r
-            }\r
-         }\r
-         container provided-allotted-resources {\r
-            list provided-allotted-resource {\r
-               key "allotted-resource-id";\r
-               uses allotted-resource-info;\r
-            }\r
-         }\r
-         container provided-configurations {\r
-            list provided-configuration {\r
-               key "configuration-id";\r
-               uses configuration-info;\r
-            }\r
-         }\r
-         container vnfc-instance-groups {\r
-            uses vnfc-instance-group;\r
-         }\r
-         container network-instance-groups {\r
-            uses network-instance-group;\r
-         }\r
-         container forwarding-paths {\r
-            list forwarding-path {\r
-               key "forwarding-path-id";\r
-               leaf forwarding-path-id {\r
-                  description "Generated by SDNC";\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               uses forwarding-path-information;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping service-status {\r
-      container service-status {\r
-         leaf response-code {\r
-            type string;\r
-         }\r
-         leaf response-message {\r
-            type string;\r
-         }\r
-         leaf final-indicator {\r
-            type string;\r
-         }\r
-         leaf request-status {\r
-            type enumeration {\r
-               enum "synccomplete";\r
-               enum "asynccomplete";\r
-               enum "notifycomplete";\r
-            }\r
-         }\r
-         leaf action {\r
-            description "value would one of possible request-actions; match the list in service-data oper-status";\r
-            type string;\r
-         }\r
-         leaf rpc-name {\r
-            type string;\r
-         }\r
-         leaf rpc-action {\r
-            description "this is the svc-action from the incoming request";\r
-            type enumeration {\r
-               enum "assign";\r
-               enum "activate";\r
-               enum "configure";\r
-               enum "delete";\r
-               enum "unassign";\r
-               enum "deactivate";\r
-               enum "create";\r
-            }\r
-         }\r
-         leaf response-timestamp {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping service-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses service-request-input;\r
-   }\r
-   grouping service-request-input {\r
-      container service-request-input {\r
-         leaf service-instance-name {\r
-            type string;\r
-         }\r
-         container service-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping service-topology {\r
-      container service-topology {\r
-         uses service-topology-identifier;\r
-         uses onap-model-information;\r
-         uses service-assignments;\r
-         uses service-parameters;\r
-      }\r
-   }\r
-   grouping service-topology-identifier {\r
-      container service-topology-identifier {\r
-         leaf service-instance-id {\r
-            description "repeated";\r
-            type string;\r
-         }\r
-         leaf service-type {\r
-            description "tag labeled subscription-service-type in the service-information input";\r
-            type string;\r
-         }\r
-         leaf service-id {\r
-            description "from MSO input on STO assign";\r
-            type string;\r
-         }\r
-         leaf service-instance-name {\r
-            description "optionally comes from service-request-input container or is assigned by sdn-c";\r
-            type string;\r
-         }\r
-         leaf global-customer-id {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping service-assignments {\r
-      container service-assignments {\r
-      }\r
-   }\r
-   grouping service-parameters {\r
-      container service-parameters {\r
-         list service-parameter {\r
-            key "service-parameter-name";\r
-            leaf service-parameter-name {\r
-               type string;\r
-            }\r
-            leaf service-parameter-value {\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping service-level-oper-status {\r
-      container service-level-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping network-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses network-information;\r
-      uses network-request-input;\r
-   }\r
-   grouping network-information {\r
-      container network-information {\r
-         leaf network-id {\r
-            type string;\r
-         }\r
-         leaf network-type {\r
-            type string;\r
-         }\r
-         leaf network-technology {\r
-             type string;\r
-         }\r
-         leaf from-preload {\r
-            description "Indicates if source is preload data";\r
-            type boolean;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping network-request-input {\r
-      container network-request-input {\r
-         leaf network-name {\r
-            type string;\r
-         }\r
-         uses region-identifier;\r
-         container network-input-parameters {\r
-            uses param;\r
-         }\r
-         leaf network-instance-group-id {\r
-            description "When network has instance-group role in service model";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping network-topology {\r
-      container network-topology {\r
-         uses network-topology-identifier-structure;\r
-         uses region-identifier;\r
-         uses onap-model-information;\r
-         uses network-assignments;\r
-         uses network-parameters;\r
-      }\r
-   }\r
-   grouping network-topology-identifier-structure {\r
-      container network-topology-identifier-structure {\r
-         leaf network-id {\r
-            type string;\r
-         }\r
-         leaf network-name {\r
-            type string;\r
-         }\r
-         leaf network-role {\r
-            type string;\r
-         }\r
-         leaf network-type {\r
-            type string;\r
-         }\r
-         leaf network-instance-group-id {\r
-            description "When network is part of network instance-Group-data & instance Group in A&AI";\r
-            type string;\r
-         }\r
-         leaf network-technology {\r
-            type string;\r
-         }\r
-         leaf eipam-v4-address-plan {\r
-            type string;\r
-         }\r
-         leaf eipam-v6-address-plan {\r
-            type string;\r
-         }\r
-         leaf is-trunked {\r
-             type boolean;\r
-         }\r
-         leaf segmentation-id {\r
-            type string;\r
-         }\r
-         container related-networks {\r
-            uses related-network;\r
-         }\r
-      }\r
-   }\r
-   grouping network-assignments {\r
-      container network-assignments {\r
-      }\r
-   }\r
-   grouping network-parameters {\r
-      container network-parameters {\r
-         list network-parameter {\r
-            key "network-parameter-name";\r
-            leaf network-parameter-name {\r
-               type string;\r
-            }\r
-            leaf network-parameter-value {\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping network-instance-group {\r
-      list network-instance-group {\r
-         key "network-instance-group-id";\r
-         leaf network-instance-group-id {\r
-            description "Also a Key in Network Instance Group in A&AI";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf network-instance-group-function {\r
-            type string;\r
-         }\r
-         leaf service-instance-id {\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-         container subnet-assignment-policy {\r
-            leaf subnet-use {\r
-               description "Current valid values - unique, shared (default)";\r
-               type string;\r
-            }\r
-         }\r
-         container vpn-binding-policy {\r
-            leaf vpn-binding {\r
-               type string;\r
-            }\r
-            leaf vpn-name {\r
-               type string;\r
-            }\r
-            leaf vpn-type {\r
-               type string;\r
-            }\r
-            leaf vpn-platform {\r
-               type string;\r
-            }\r
-            leaf global-route-target {\r
-               type string;\r
-            }\r
-            leaf route-target-role {\r
-               type string;\r
-            }\r
-         }\r
-         container aggregate-route-policy {\r
-            leaf aggregate-route-policy-name {\r
-               type string;\r
-            }\r
-            leaf ipv4-aggregate-route-level {\r
-               type string;\r
-            }\r
-            leaf ipv6-aggregate-route-level {\r
-               type string;\r
-            }\r
-         }\r
-         uses aggregate-routes;\r
-         uses subnets;\r
-         leaf subnet-key-value {\r
-            description "key-value provided to EIPAM when  creating shared subnet";\r
-            type string;\r
-         }\r
-         container networks {\r
-            list network {\r
-               key "network-id";\r
-               leaf network-id {\r
-                  description "Index into network-topology-identifier structure";\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               leaf neutron-network-id {\r
-                  description "Neutron-network-id assigned by PO/RO";\r
-                  type string;\r
-               }\r
-               uses vpn-bindings;\r
-               leaf vlan-tag-id {\r
-                  type uint32;\r
-               }\r
-               leaf network-status {\r
-                  description "assigned, unassigned";\r
-                  type string;\r
-               }\r
-               container customer-bonding-requests {\r
-                  list customer-bonding-request {\r
-                     key "configuration-id";\r
-                     leaf configuration-id {\r
-                        description "e.g. vlan network receptor configuration id";\r
-                        type string;\r
-                     }\r
-                  }\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping network-level-oper-status {\r
-      container network-level-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping pnf-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses pnf-details;\r
-      uses pnf-request-input;\r
-   }\r
-   grouping pnf-details {\r
-      container pnf-details {\r
-         leaf pnf-id {\r
-            description "pnfId*Identifier of this Pnf information element. CORRELATIONID = PNF-NAME (A&AI)";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf pnf-type {\r
-            description "pnfType (template)*Type of Resource. NEW type: PNF (pre-defined in SDC)";\r
-            type string;\r
-         }\r
-         leaf pnf-name {\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping pnf-request-input {\r
-      container pnf-request-input {\r
-         leaf request-version {\r
-            description "keep this? e.g. 1702";\r
-            type string;\r
-         }\r
-         leaf pnf-name {\r
-            type string;\r
-         }\r
-         uses region-identifier;\r
-         container pnf-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping pnf-topology {\r
-      container pnf-topology {\r
-         uses pnf-topology-identifier-structure;\r
-         uses region-identifier;\r
-         uses onap-model-information;\r
-         container pnf-parameters-data {\r
-            uses param;\r
-         }\r
-         leaf sdnc-generated-cloud-resources {\r
-            description "Indicate if source is sdnc generated cloud param.When true, the parameters are literal HEAT template parameter names;When false, the parameters need to be converted to HEAT format";\r
-            type boolean;\r
-         }\r
-      }\r
-   }\r
-   grouping pnf-topology-identifier-structure {\r
-      container pnf-topology-identifier-structure {\r
-         leaf pnf-id {\r
-            type string;\r
-         }\r
-         leaf pnf-type {\r
-            description "In preload tree, this label is used for the vf-module-type";\r
-            type string;\r
-         }\r
-         leaf pnf-name {\r
-            description "optionally comes from pnf-request-input container or is assigned by sdn-c";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping pnf-level-oper-status {\r
-      container pnf-level-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping vnf-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses vnf-information;\r
-      uses vnf-request-input;\r
-      uses license-information;\r
-   }\r
-   grouping vnf-information {\r
-      container vnf-information {\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vnf-type {\r
-            type string;\r
-         }\r
-         leaf vnf-name {\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping vnf-request-input {\r
-      container vnf-request-input {\r
-         leaf request-version {\r
-            type string;\r
-         }\r
-         leaf vnf-name {\r
-            type string;\r
-         }\r
-         uses region-identifier;\r
-         container vnf-networks {\r
-            list vnf-network {\r
-               key "network-role";\r
-               uses vnf-network-data;\r
-            }\r
-         }\r
-         list vnf-network-instance-group-ids {\r
-            key "vnf-network-instance-group-id";\r
-            leaf vnf-network-instance-group-id {\r
-               description "List of vnf network-instance-group";\r
-               type string;\r
-            }\r
-         }\r
-         container vnf-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-topology {\r
-      container vnf-topology {\r
-         uses vnf-topology-identifier-structure;\r
-         uses region-identifier;\r
-         uses onap-model-information;\r
-         uses vnf-resource-assignments;\r
-         container vnf-parameters-data {\r
-            uses param;\r
-         }\r
-         leaf sdnc-generated-cloud-resources {\r
-            description "Indicate if source is sdnc generated cloud param";\r
-            type boolean;\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-topology-identifier-structure {\r
-      container vnf-topology-identifier-structure {\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vnf-type {\r
-            description "In preload tree, this label is used for the vf-module-type";\r
-            type string;\r
-         }\r
-         leaf nf-type {\r
-            type string;\r
-         }\r
-         leaf nf-role {\r
-            type string;\r
-         }\r
-         leaf nf-function {\r
-            type string;\r
-         }\r
-         leaf nf-code {\r
-            description "used in vnf naming";\r
-            type string;\r
-         }\r
-         leaf vnf-name {\r
-            description "optionally comes from vnf-request-input container or is assigned by sdn-c";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-resource-assignments {\r
-      container vnf-resource-assignments {\r
-         leaf vnf-status {\r
-            description "Orchestration status from AAI - to be set by SDNC";\r
-            type string;\r
-         }\r
-         container availability-zones {\r
-            leaf-list availability-zone {\r
-               description "Openstack availability zone name or UUID";\r
-               type string;\r
-               ordered-by user;\r
-            }\r
-            leaf max-count {\r
-               description "From the TOSCA data. Indicates the largest availability zone count needed by any vf-module in the VNF.";\r
-               type uint8;\r
-            }\r
-         }\r
-         container vnf-networks {\r
-            list vnf-network {\r
-               key "network-role";\r
-               uses vnf-network-data;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-network-data {\r
-      leaf network-role {\r
-         description "A Network Role to which a VNF must connect";\r
-         type string;\r
-      }\r
-      leaf network-name {\r
-         description "Unique Neutron UUID of an instance of the network role ";\r
-         type string;\r
-      }\r
-      leaf neutron-id {\r
-         description "Unique Neutron UUID of an instance of the network role ";\r
-         type string;\r
-      }\r
-      leaf network-id {\r
-         description "Unique Neutron UUID of an instance of the network role ";\r
-         type string;\r
-      }\r
-      leaf contrail-network-fqdn {\r
-         description "contrail network policy object";\r
-         type string;\r
-      }\r
-      container subnets-data {\r
-         list subnet-data {\r
-            key "sdnc-subnet-id";\r
-            leaf sdnc-subnet-id {\r
-               description "Unique SDNC generated UUID of the subnet. Key into A&AI instance.This maps to ipv4-key-subnet-id and ipv6-key-subnet-id in VNF-API";\r
-               type string;\r
-            }\r
-            leaf subnet-role {\r
-               description "Subnet Role for the subnet";\r
-               type string;\r
-            }\r
-            leaf subnet-name {\r
-               description "Populated for preload only";\r
-               type string;\r
-            }\r
-            leaf ip-version {\r
-               description "Should be ipv4 or ipv6";\r
-               type string;\r
-            }\r
-            leaf subnet-id {\r
-               description "subnet UUID to be passed into the HEAT template";\r
-               type string;\r
-            }\r
-            leaf dhcp-enabled {\r
-               description "Indicator to use this subnet for  DHCP ";\r
-               type enumeration {\r
-                  enum "Y";\r
-                  enum "N";\r
-               }\r
-            }\r
-            leaf network-start-address {\r
-               description "start-address of the subnet";\r
-               type inet:ip-address;\r
-            }\r
-            leaf gateway-address {\r
-               description "subnet gateway address";\r
-               type inet:ip-address;\r
-            }\r
-            leaf cidr-mask {\r
-               description "cidr mask";\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-      leaf is-trunked {\r
-          type boolean;\r
-       }\r
-       leaf segmentation-id {\r
-          type string;\r
-       }\r
-       container related-networks {\r
-          uses related-network;\r
-       }\r
-   }\r
-   grouping vnf-level-oper-status {\r
-      container vnf-level-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping vf-module-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses vnf-information;\r
-      uses vf-module-information;\r
-      uses vf-module-request-input;\r
-   }\r
-   grouping vf-module-information {\r
-      container vf-module-information {\r
-         leaf vf-module-id {\r
-            type string;\r
-         }\r
-         leaf vf-module-type {\r
-            type string;\r
-         }\r
-         leaf from-preload {\r
-            description "Indicates if source is preload data";\r
-            type boolean;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping vf-module-request-input {\r
-      container vf-module-request-input {\r
-         leaf request-version {\r
-            description "keep this?";\r
-            type string;\r
-         }\r
-         leaf vf-module-name {\r
-            type string;\r
-         }\r
-         uses region-identifier;\r
-         container vf-module-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping vf-module-topology {\r
-      container vf-module-topology {\r
-         uses vf-module-topology-identifier;\r
-         uses region-identifier;\r
-         uses onap-model-information;\r
-         uses vf-module-assignments;\r
-         container vf-module-parameters {\r
-            uses param;\r
-         }\r
-         leaf sdnc-generated-cloud-resources {\r
-            description "Indicate if source is sdnc-generated-cloud-resources.When true, the parameters are literal HEAT template parameter names;When false, the parameters need to be converted to HEAT format"; \r
-            type boolean;\r
-         }\r
-      }\r
-   }\r
-   grouping vf-module-topology-identifier {\r
-      container vf-module-topology-identifier {\r
-         leaf vf-module-id {\r
-            description "vf-module id";\r
-            type string;\r
-         }\r
-         leaf vf-module-name {\r
-            description "vf-module-name";\r
-            type string;\r
-         }\r
-         leaf vf-module-type {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping vf-module-assignments {\r
-      container vf-module-assignments {\r
-         leaf vf-module-status {\r
-            description "Orchestration status from AAI - to be set by SDNC";\r
-            type string;\r
-         }\r
-         container vms {\r
-            list vm {\r
-               key "vm-type";\r
-               uses vm-topology-data;\r
-            }\r
-         }\r
-         uses vlan-vnfc-instance-groups;\r
-         container dhcp-subnet-assignments {\r
-            list dhcp-subnet-assignment {\r
-               key "neutron-subnet-id";\r
-               leaf neutron-subnet-id {\r
-                  description "Same as subnet-id in subnet-data structure";\r
-                  type string;\r
-               }\r
-               leaf network-role {\r
-                  type string;\r
-               }\r
-               leaf ip-version {\r
-                  type string;\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vm-topology-data {\r
-      leaf vm-type {\r
-         type string;\r
-         mandatory true;\r
-      }\r
-      uses onap-model-information;\r
-      leaf nfc-naming-code {\r
-         description "used in vm naming(draft 29: changed from nfc-code)";\r
-         type string;\r
-      }\r
-      leaf vm-type-tag {\r
-         description "from tosca data on vfc";\r
-         type string;\r
-      }\r
-      leaf vm-count {\r
-         type uint8;\r
-      }\r
-      container vm-names {\r
-         leaf-list vm-name {\r
-            type string;\r
-            ordered-by user;\r
-         }\r
-         list vnfc-names {\r
-            key "vnfc-name";\r
-            leaf vnfc-name {\r
-               type string;\r
-            }\r
-            container vnfc-networks {\r
-               uses vnfc-network-data;\r
-            }\r
-         }\r
-      }\r
-      container vm-networks {\r
-         list vm-network {\r
-            key "network-role";\r
-            uses vm-network-data;\r
-         }\r
-      }\r
-   }\r
-   grouping vnfc-network-data {\r
-      list vnfc-network-data {\r
-         key "vnfc-network-role";\r
-         leaf vnfc-network-role {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf vnfc-type {\r
-            type string;\r
-         }\r
-         uses connection-point;\r
-         container vnfc-ports {\r
-            list vnfc-port {\r
-               key "vnfc-port-id";\r
-               leaf vnfc-port-id {\r
-                  description "Port(s) with a given network-role are assigned vnfc-port-id from series - 01, 02, 03 ...Example: VM with two ports with network-role =X and another 2 ports with network-role=Y vnfc-port-ids:01 - 1st port with network-role=X02 - 2nd port with network-role=X01 - 1st port with network-role=Y02 - 2nd port with network-role=Y";\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               leaf common-sub-interface-role {\r
-                  description "If sub-interfaces have common interface role (network role)";\r
-                  type string;\r
-               }\r
-               container vnic-sub-interfaces {\r
-                  uses sub-interface-network-data;\r
-               }\r
-            }\r
-         }\r
-         list vnfc-subnet {\r
-            key "vnfc-subnet-role";\r
-            leaf vnfc-subnet-role {\r
-               description "Default value if subnet role is not defined.";\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            list vnfc-ip-assignments {\r
-               key "vnfc-address-family";\r
-               leaf vnfc-address-family {\r
-                  description "indicates if this is IpV4 or IpV6";\r
-                  type enumeration {\r
-                     enum "ipv4";\r
-                     enum "ipv6";\r
-                  }\r
-               }\r
-               leaf vnfc-subnet-dhcp {\r
-                  description "Indicator to use DHCP for IP assignment. Unless dhcp=N, we wouldnt have any IPs here, since they would not be SDNC assigned ";\r
-                  type enumeration {\r
-                     enum "Y";\r
-                     enum "N";\r
-                  }\r
-               }\r
-               leaf vnfc-subnet-ip-count {\r
-                  description "The number of IP addresses to be assigned per vnfc for this subnet role";\r
-                  type uint8;\r
-               }\r
-               list vnfc-subnet-ip {\r
-                  key "vnfc-ip-address";\r
-                  leaf vnfc-ip-address {\r
-                     description "Either IpV4 IP or IpV6 IP addresses should be present";\r
-                     type inet:ip-address;\r
-                  }\r
-                  leaf vnfc-client-key {\r
-                     type string;\r
-                  }\r
-                  leaf ip-type {\r
-                     description "Capture what type of IP this is, if is virtual IP (AKA, floating IP) or Fixed IP. ";\r
-                     type enumeration {\r
-                        enum "FIXED";\r
-                        enum "VIP";\r
-                     }\r
-                  }\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vm-network-data {\r
-      leaf network-role {\r
-         description "network (identified by role) that this VM connects to.  Should also be included in the vnf-networks for the containing VNF";\r
-         type string;\r
-         mandatory true;\r
-      }\r
-      leaf network-role-tag {\r
-         type string;\r
-      }\r
-      container network-information-items {\r
-         list network-information-item {\r
-            key "ip-version";\r
-            leaf ip-version {\r
-               description "Use ipv4 or ipv6";\r
-               type string;\r
-            }\r
-            leaf use-dhcp {\r
-               description "Indicator to use DHCP on this network for this VM";\r
-               type enumeration {\r
-                  enum "Y";\r
-                  enum "N";\r
-               }\r
-            }\r
-            leaf ip-count {\r
-               description "The number of ip addresses to be assigned per vm for this network role";\r
-               type uint8;\r
-            }\r
-            container network-ips {\r
-               leaf-list network-ip {\r
-                  description "List of assigned ip addresses of type ip-version on a network";\r
-                  type string;\r
-                  ordered-by user;\r
-               }\r
-            }\r
-         }\r
-      }\r
-      container mac-addresses {\r
-         leaf-list mac-address {\r
-            description "List of network assignments for this vm-type";\r
-            type string;\r
-            ordered-by user;\r
-         }\r
-      }\r
-      container floating-ips {\r
-         leaf-list floating-ip-v4 {\r
-            description "Floating ipv4 for VMs of a given type on this network";\r
-            type inet:ip-address;\r
-            ordered-by user;\r
-         }\r
-         leaf-list floating-ip-v6 {\r
-            description "Floating ipv6 for VMs of a given type on this network";\r
-            type inet:ipv6-address;\r
-            ordered-by user;\r
-         }\r
-      }\r
-      container interface-route-prefixes {\r
-         leaf-list interface-route-prefix {\r
-            description "ordered-by: user";\r
-            type string;\r
-            ordered-by user;\r
-         }\r
-      }\r
-      container sriov-parameters {\r
-         container heat-vlan-filters {\r
-            leaf-list heat-vlan-filter {\r
-               type string;\r
-               ordered-by user;\r
-            }\r
-         }\r
-         container application-tags {\r
-            container c-tags {\r
-               leaf-list c-tag {\r
-                  type string;\r
-                  ordered-by user;\r
-               }\r
-            }\r
-            container s-tags {\r
-               leaf-list s-tag {\r
-                  type string;\r
-                  ordered-by user;\r
-               }\r
-            }\r
-         }\r
-      }\r
-      leaf is-trunked {\r
-         type boolean;\r
-      }\r
-      leaf segmentation-id {\r
-         type string;\r
-      }\r
-      container related-networks {\r
-         uses related-network;\r
-      }\r
-   }\r
-   grouping vf-module-level-oper-status {\r
-      container vf-module-level-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping allotted-resource-info {\r
-      leaf allotted-resource-id {\r
-         type string;\r
-      }\r
-      leaf allotted-resource-type {\r
-         description "Not an enum, but expected values are contrail-route and security-zone.";\r
-         type string;\r
-      }\r
-      leaf allotted-resource-pointer {\r
-         description "Pointer to the allotted-resources topology";\r
-         type string;\r
-      }\r
-   }\r
-   grouping forwarding-path-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses forwarding-path-request-input;\r
-   }\r
-   grouping forwarding-path-request-input {\r
-      container forwarding-path-request-input {\r
-         list forwarding-paths {\r
-            key "forwarding-path-name";\r
-            leaf forwarding-path-name {\r
-               description "Forwarding-path-name from tosca-model. ";\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            uses onap-model-information;\r
-         }\r
-      }\r
-   }\r
-   grouping forwarding-path-information {\r
-      leaf forwarding-path-name {\r
-         description "Fowarding-path name from TOSCA model, or name generated by SDNC";\r
-         type string;\r
-      }\r
-      leaf forwarding-path-type {\r
-         description "Based on MySQL Forwarding_Path tables path_type value from related TOSCA model";\r
-         type enumeration {\r
-            enum "VNF";\r
-            enum "Service";\r
-         }\r
-      }\r
-      uses onap-model-information;\r
-      container service-paths {\r
-         list service-path {\r
-            key "service-path-instance-id";\r
-            uses service-path-information;\r
-         }\r
-      }\r
-   }\r
-   grouping service-path-information {\r
-      leaf service-path-instance-id {\r
-         description "Service path instance ID generated by SDNC. Identifies a service-path-instance within a forwarding-path definition";\r
-         type string;\r
-      }\r
-      leaf service-path-instance-name {\r
-         description "A unique name generated by SDNC ( forwarding-path-name + service-path-instance-id )";\r
-         type string;\r
-      }\r
-      leaf version {\r
-         description "Only one version of the service-path-instance data will be available in MD-SAL.  version will be updated when the service-path-instance is reevaluated ";\r
-         type string;\r
-      }\r
-      list service {\r
-         key "service-instance-id";\r
-         leaf service-instance-id {\r
-            description "service-instance-id of each service-instance in the service-path-instance";\r
-            type string;\r
-         }\r
-         leaf service-path-sequence-id {\r
-            description "e.g. S1S2S3S5seq id=1  S1-S2seq id=2  S2S3seq id=3  S3S5Incremental integer value";\r
-            type uint32;\r
-         }\r
-         container vnfs {\r
-            list vnf {\r
-               key "vnf-instance-id";\r
-               uses vnf-path-information;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-path-information {\r
-      leaf vnf-instance-id {\r
-         description "VNF instance ID in the path";\r
-         type string;\r
-      }\r
-      leaf vnf-path-sequence-id {\r
-         description "Sequence ID at the VNF instance levele.g.  e.g. V1V2V3V5V6seq id=1  V1-V2seq id=2  V2V3seq id=3  V3V5seq id=4  V5V6incremental integer value.";\r
-         type uint32;\r
-      }\r
-      leaf left-network-name {\r
-         description "Every VNF instance in the path is connected to one or two VNFs.";\r
-         type string;\r
-      }\r
-      leaf left-network-role {\r
-         type string;\r
-      }\r
-      leaf right-network-name {\r
-         type string;\r
-      }\r
-      leaf right-network-role {\r
-         type string;\r
-      }\r
-      container vf-module-instance {\r
-         leaf vf-module-id {\r
-            type string;\r
-         }\r
-         leaf vf-module-name {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping forwarding-path-level-oper-status { \r
-      container forwarding-path-level-oper-status { \r
-         uses oper-status-data; \r
-      } \r
-   }\r
-   grouping configuration-info {\r
-      leaf configuration-id {\r
-         type string;\r
-      }\r
-      leaf configuration-type {\r
-         description "Not an enum, but expected values are port-mirror-configuration, , vlan-network-receptor";\r
-         type string;\r
-      }\r
-      leaf configuration-sub-type {\r
-         description "Not an enum, but expected values are vprobe and pprobe";\r
-         type string;\r
-      }\r
-      leaf configuration-topology-link {\r
-         description "Pointer to the configurations topology";\r
-         type string;\r
-      }\r
-   }\r
-   grouping vnfc-instance-group {\r
-      list vnfc-instance-group {\r
-         key "instance-group-role nfc-naming-code configuration-id";\r
-         leaf instance-group-role {\r
-            description "i.e.TSBC_VNFC_group";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf nfc-naming-code {\r
-            description "Set to nfc-naming-code from A&AI";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf configuration-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf group-type {\r
-            description " port-mirror-source or  port-mirror-dest";\r
-            type string;\r
-         }\r
-         uses vnfc-objects;\r
-      }\r
-   }\r
-   grouping vnfc-objects {\r
-      container vnfc-objects {\r
-         list vnfc-object {\r
-            key "vnfc-key";\r
-            leaf vnfc-key {\r
-               type string;\r
-            }\r
-            leaf vnfc-name {\r
-               description "Vnfc name as key in A&AI";\r
-               type string;\r
-            }\r
-            leaf vm-type {\r
-               type string;\r
-            }\r
-            leaf vnf-id {\r
-               type string;\r
-            }\r
-            leaf vserver-name {\r
-               type string;\r
-            }\r
-            leaf vserver-id {\r
-               type string;\r
-            }\r
-            container vnics {\r
-               list vnic {\r
-                  key "vnic-port-name";\r
-                  leaf vnic-port-name {\r
-                     type string;\r
-                  }\r
-                  leaf vnic-port-id {\r
-                     type string;\r
-                  }\r
-                  container capacity {\r
-                     leaf vnic-capacity {\r
-                        type uint32;\r
-                     }\r
-                     leaf used-capacity {\r
-                        description "Updated for destination port when source port is mapped/unmapped.";\r
-                        type uint32;\r
-                     }\r
-                  }\r
-                  container vnic-ip-addresses {\r
-                     uses ip-addresses;\r
-                  }\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnfcs {\r
-      container vnfcs {\r
-         list vnfc {\r
-            key "vnfc-name";\r
-            leaf vnfc-name {\r
-               description "Vnfc name as key in A&AI";\r
-               type string;\r
-            }\r
-            leaf vserver-name {\r
-               type string;\r
-            }\r
-            leaf vserver-id {\r
-               type string;\r
-            }\r
-            uses vnics;\r
-         }\r
-      }\r
-   }\r
-   grouping vnics {\r
-      container vnics {\r
-         list vnic {\r
-            key "vnic-port-name";\r
-            leaf vnic-port-name {\r
-               type string;\r
-            }\r
-            leaf vnic-port-id {\r
-               type string;\r
-            }\r
-            uses sub-interfaces;\r
-         }\r
-      }\r
-   }\r
-   grouping sub-interfaces {\r
-      container sub-interfaces {\r
-         list sub-interface {\r
-            key "sub-interface-port-name";\r
-            leaf sub-interface-port-name {\r
-               type string;\r
-            }\r
-            leaf sub-interface-port-id {\r
-               type string;\r
-            }\r
-            container sub-interface-ip-addresses {\r
-               uses ip-addresses;\r
-            }\r
-            uses vlan-tags;\r
-            container sub-interface-network {\r
-               leaf network-name {\r
-                  type string;\r
-               }\r
-               leaf network-id {\r
-                  type string;\r
-               }\r
-            }\r
-            leaf sub-interface-status {\r
-               description "NULL, unassigned, assigned";\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vlan-tags {\r
-      container vlan-tags {\r
-         leaf vlan-interface {\r
-            description "A&AI Key";\r
-            type string;\r
-         }\r
-         leaf upper-tag-id {\r
-            type uint32;\r
-         }\r
-         leaf lower-tag-id {\r
-            type uint32;\r
-         }\r
-         leaf is-private {\r
-            type boolean;\r
-         }\r
-      }\r
-   }\r
-   grouping vlan-vnfc-instance-groups {\r
-      container vlan-vnfc-instance-groups {\r
-         list vlan-vnfc-instance-group {\r
-            key "instance-group-id";\r
-            leaf instance-group-id {\r
-               description "A&AI ID";\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf instance-group-function {\r
-               type string;\r
-            }\r
-            leaf vnf-id {\r
-               type string;\r
-            }\r
-            container vnfcs {\r
-               list vnfc {\r
-                  key "vnfc-name";\r
-                  leaf vnfc-name {\r
-                     type string;\r
-                  }\r
-                  uses vnic-groups;\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnic-groups {\r
-      container vnic-groups {\r
-         list vnic-group {\r
-            key "vnic-interface-role";\r
-            leaf vnic-interface-role {\r
-               description "Same as network-role of network where vnic is connected";\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf network-instance-group-function {\r
-               description "network-instance-Group-function for network collection where vnics with vnic-interface-role will connect";\r
-               type string;\r
-            } \r
-            leaf vlan-assignment-policy-name {\r
-               description "Policy name in ASDC model & policy definition in Policy Engine";\r
-               type string;\r
-            }\r
-            leaf vlan-tag-index-next {\r
-               description "Next tag to be assigned";\r
-               type uint32;\r
-            }\r
-            container vlan-common-ip-addresses {\r
-               uses ip-addresses;\r
-            }\r
-            container vlan-vnics {\r
-               list vlan-vnic {\r
-                  key "vnic-port-id";\r
-                  leaf vnic-port-id {\r
-                     type string;\r
-                     mandatory true;\r
-                  }\r
-                  container vnic-sub-interfaces {\r
-                     uses sub-interface-network-data;\r
-                  }\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-network-collection {\r
-      list vnf-network-collection {\r
-         key "network-instance-group-function";\r
-         leaf network-instance-group-function {\r
-            description "Network Instance-Group function in A&AI";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf network-instance-group-id {\r
-            description "Network Instance-Group id in A&AI";\r
-            type string;\r
-         }\r
-         leaf network-collection-service-instance-id {\r
-            description "Service-instance-id of service that created the network collection";\r
-            type string;\r
-         }\r
-         leaf network-collection-customization-uuid {\r
-            description "network-collection-customization-uuid stored in Network IsntanceGroup.customization-uuid in A&AI";\r
-            type string;\r
-         }\r
-         container networks {\r
-            list network {\r
-               key "network-id";\r
-               leaf network-id {\r
-                  description "Index into network-topology-identifier structure";\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               leaf neutron-network-id {\r
-                  description "Neutron-network-id assigned by PO/RO";\r
-                  type string;\r
-               }\r
-            }\r
-         }\r
-         container vnf-floating-ip {\r
-            uses ip-addresses;\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-sub-interface-group {\r
-      list vnf-sub-interface-group {\r
-         key "vnfc-instance-group-function network-instance-group-function parent-port-role";\r
-         leaf vnfc-instance-group-function {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf network-instance-group-function {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf parent-port-role {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         uses vnfcs;\r
-         container customer-bonding-requests {\r
-            list customer-bonding-request {\r
-               key "configuration-id";\r
-               leaf configuration-id {\r
-                  description "e.g. vlan network receptor configuration id";\r
-                  type string;\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping sub-interface-network-data {\r
-      list sub-interface-network-data {\r
-         key "network-id";\r
-         leaf network-id {\r
-            description "Subinterface network id (UUID in A&AI)";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf neutron-network-id {\r
-            description "Neutron network id assigned by PO/RP";\r
-            type string;\r
-         }\r
-         leaf network-name {\r
-            description "Subinterface network name";\r
-            type uint32;\r
-         }\r
-         leaf vlan-tag-id {\r
-            description "Vlan tag assigned to subinterface port";\r
-            type uint32;\r
-         }\r
-         leaf network-role {\r
-            description "e.g. untrusted ";\r
-            type string;\r
-         }\r
-         leaf network-role-tag {\r
-            description "Assuming HEAT template network role tag parameter - not used";\r
-            type string;\r
-         }\r
-         container network-information-items {\r
-            list network-information-item {\r
-               key "ip-version";\r
-               leaf ip-version {\r
-                  description "Use ipv4 or ipv6";\r
-                  type string;\r
-               }\r
-               leaf use-dhcp {\r
-                  description "Indicator to use DHCP on this network for this VM - set to N for Vlan tagging";\r
-                  type enumeration {\r
-                     enum "Y";\r
-                     enum "N";\r
-                  }\r
-               }\r
-               leaf ip-count {\r
-                  description "The number of ip addresses to be assigned per vm for this network role";\r
-                  type uint8;\r
-               }\r
-               container network-ips {\r
-                  leaf-list network-ip {\r
-                     description "List of assigned ip addresses of type ip-version on a network.";\r
-                     type inet:ip-address;\r
-                     ordered-by user;\r
-                  }\r
-               }\r
-            }\r
-         }\r
-         container floating-ips {\r
-            leaf-list floating-ip-v4 {\r
-               description "Floating ipv4 for VMs of a given type on this network";\r
-               type inet:ip-address;\r
-               ordered-by user;\r
-            }\r
-            leaf-list floating-ip-v6 {\r
-               description "Floating ipv6 for VMs of a given type on this network";\r
-               type inet:ipv6-address;\r
-               ordered-by user;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-cloud-param {\r
-      leaf service-instance-id {\r
-         type string;\r
-      }\r
-      leaf service-instance-name {\r
-         type string;\r
-      }\r
-      list vnf {\r
-         key "vnf-id";\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vnf-name {\r
-            type string;\r
-         }\r
-         uses param;\r
-         list vf-module {\r
-            key "vf-module-id";\r
-            leaf vf-module-id {\r
-               type string;\r
-            }\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping vnf-get-resource-request-input-data {\r
-      list vnf {\r
-         key "vnf-id";\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         list vf-module {\r
-            key "vf-module-id";\r
-            leaf vf-module-id {\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping license-information {\r
-      container license-information {\r
-         list entitlement-pool-list {\r
-            key "entitlement-pool-uuid action";\r
-            leaf entitlement-pool-uuid {\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf action {\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf entitlement-pool-invariant-uuid {\r
-               type string;\r
-            }\r
-            leaf entitlement-uuid {\r
-               description "assigned by ALTS";\r
-               type string;\r
-            }\r
-         }\r
-         list license-key-group-list {\r
-            key "license-key-group-uuid action";\r
-            leaf license-key-group-uuid {\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf action {\r
-               type string;\r
-               mandatory true;\r
-            }\r
-            leaf license-key-group-invariant-uuid {\r
-               type string;\r
-            }\r
-            leaf license-key {\r
-               description "assigned by ALTS";\r
-               type string;\r
-            }\r
-            leaf license-uuid {\r
-               description "assigned by ALTS";\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping related-network {\r
-      list related-network {\r
-         key "network-id";\r
-         leaf network-id {\r
-            description "Key to l3-network object";\r
-            type string;\r
-         }\r
-         leaf network-role {\r
-            type string;\r
-         }\r
-         uses vlan-tags;\r
-      }\r
-   }\r
-   grouping connection-point {\r
-      container connection-point {\r
-         leaf connection-point-id {\r
-            description "Key to CP object in A&AI";\r
-            type string;\r
-         }\r
-         leaf port-id {\r
-            description "port-index when multiple CPs connect to same network. Default zero (0)";\r
-            type string;\r
-         }\r
-         list vlan-data {\r
-            key "vlan-uuid";\r
-            leaf vlan-uuid {\r
-               description "Key to vlan-tag uuid object in A&AI Generated by vlan mS";\r
-               type string;\r
-            }\r
-            leaf vlan-tag-id {\r
-               type string;\r
-            }\r
-            leaf vlan-tag-description {\r
-               type string;\r
-            }\r
-            leaf vlan-role {\r
-               description "Inner/Outer roles";\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping aggregate-routes {\r
-      list aggregate-routes {\r
-         key "route-id";\r
-         leaf route-id {\r
-            description "Unique id";\r
-            type string;\r
-         }\r
-         leaf start-address {\r
-            type inet:ip-address;\r
-         }\r
-         leaf cidr-mask {\r
-            type string;\r
-         }\r
-         leaf ip-version {\r
-            description "Use values 4 or 6.";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping pnf-information {\r
-      container pnf-information {\r
-         leaf pnf-name {\r
-            description "Key for A&AI query";\r
-            type string;\r
-         }\r
-         leaf pnf-type {\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping contrail-route-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses allotted-resource-information;\r
-      uses contrail-route-request-input;\r
-   }\r
-   grouping contrail-route-request-input {\r
-      container contrail-route-request-input {\r
-         container source-network {\r
-            uses network-info;\r
-         }\r
-         container dest-network {\r
-            uses network-info;\r
-         }\r
-         container contrail-applied-service-info {\r
-            leaf service-instance-id {\r
-               description "The service-instance-id of the service in which the resource(s) providing the applied-service are. For vIPR, this is the service-instance-id of the vIPR-ATM service in which the vIPR-ATM VNF Contrail service is the applied service. MSO will populate with the input data.";\r
-               type string;\r
-            }\r
-            leaf contrail-fqdn {\r
-               description "For future use by MSO on input; MSO not expected to populate in 1707. If MSO can identify the contrail-fqdn of the Contrail applied service for this contrail-route, then it would be specified here on input. Otherwise, SDN-C will look it up by the vIPR-ATM VNF in the service-instance-id of the contrail-applied-service-info grouing.";\r
-               type string;\r
-            }\r
-         }\r
-         container contrail-route-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping network-info {\r
-      leaf network-id {\r
-         type string;\r
-      }\r
-      leaf network-role {\r
-         type string;\r
-      }\r
-   }\r
-   grouping contrail-route-topology {\r
-      container contrail-route-topology {\r
-         uses allotted-resource-identifiers;\r
-         uses onap-model-information;\r
-         uses contrail-route-assignments;\r
-         container contrail-route-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping contrail-route-assignments {\r
-      container contrail-route-assignments {\r
-         leaf fq-name {\r
-            description "The Contrail fq-name of the network policy";\r
-            type string;\r
-         }\r
-         leaf contrail-id {\r
-            description "The ID assigned by Contrail to the network-policy (one for one with the fq-name)";\r
-            type string;\r
-         }\r
-         container source-network {\r
-            uses network-info;\r
-         }\r
-         container dest-network {\r
-            uses network-info;\r
-         }\r
-         container contrail-applied-service {\r
-            leaf service-instance-id {\r
-               description "The service-instance-id of the vnf from which the contrail applied service is coming";\r
-               type string;\r
-            }\r
-            leaf vnf-id {\r
-               description "The vnf representing the contrail applied service";\r
-               type string;\r
-            }\r
-            leaf contrail-fqdn {\r
-               description "This is the fq-name of the Contrail service instance through which the route is passing.";\r
-               type string;\r
-            }\r
-         }\r
-         leaf vlan-tag {\r
-            description "Contrail-assigned vlan-tag to the vipr vm interface for this route.";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping security-zone-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses allotted-resource-information;\r
-      uses security-zone-request-input;\r
-   }\r
-   grouping security-zone-request-input {\r
-      container security-zone-request-input {\r
-         leaf vlan-tag {\r
-            type string;\r
-         }\r
-         leaf trusted-network-role {\r
-            description "In the case of vIPR, this is the landing networks network-role; used in naming";\r
-            type string;\r
-         }\r
-         leaf untrusted-network-role {\r
-            description "In the case of vIPR, this is the tenant oam networks network-role; used in naming";\r
-            type string;\r
-         }\r
-         container security-zone-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping security-zone-topology {\r
-      container security-zone-topology {\r
-         uses allotted-resource-identifiers;\r
-         uses onap-model-information;\r
-         uses security-zone-assignments;\r
-         container security-zone-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping security-zone-assignments {\r
-      container security-zone-assignments {\r
-         leaf trusted-network-role {\r
-            description "In the case of vIPR, this is the landing networks network-role; used in naming";\r
-            type string;\r
-         }\r
-         leaf security-zone-name-trusted {\r
-            type string;\r
-         }\r
-         leaf untrusted-network-role {\r
-            description "In the case of vIPR, this is the tenant oam networks network-role; used in naming";\r
-            type string;\r
-         }\r
-         leaf security-zone-name-untrusted {\r
-            type string;\r
-         }\r
-         leaf security-zone-service-instance-id {\r
-            description "Will be the same as the parent-service-instance-id";\r
-            type string;\r
-         }\r
-         leaf security-zone-vnf-id {\r
-            description "Selected by SDNC from the security-zone-service-instance-id";\r
-            type string;\r
-         }\r
-         leaf vlan-tag {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping port-mirror-topology-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses configuration-information;\r
-      uses port-mirror-configuration-request-input;\r
-   }\r
-   grouping port-mirror-configuration-request-input {\r
-      container port-mirror-configuration-request-input {\r
-         container source-port {\r
-            uses port-info;\r
-            leaf source-port-id {\r
-               description "needed for srv-action=disable/enable";\r
-               type string;\r
-            }\r
-         }\r
-         container dest-port {\r
-            uses port-info;\r
-         }\r
-         uses region-identifier;\r
-         container port-mirror-configuration-input-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping port-info {\r
-      leaf service-instance-id {\r
-         description "May not be need.";\r
-         type string;\r
-      }\r
-      uses pnf-information;\r
-      uses vnf-information;\r
-   }\r
-   grouping port-mirror-configuration-topology {\r
-      container port-mirror-configuration-topology {\r
-         uses configuration-identifiers;\r
-         uses onap-model-information;\r
-         uses port-mirror-configuration-assignments;\r
-         container port-mirror-configuration-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-   grouping port-mirror-configuration-assignments {\r
-      container port-mirror-configuration-assignments {\r
-         container contrail-vmi-params {\r
-            uses param;\r
-         }\r
-         leaf vnics-group-id {\r
-            type string;\r
-         }\r
-         leaf owning-entity {\r
-            type string;\r
-         }\r
-         leaf tenant-context {\r
-            description "From tenant object in A&AI";\r
-            type string;\r
-         }\r
-         leaf tenant {\r
-            description "Tenant name from A&AI for source VNF";\r
-            type string;\r
-         }\r
-         leaf tenant-id {\r
-            description "tenant-id from A&AI for source VNF";\r
-            type string;\r
-         }\r
-         leaf dest-tenant {\r
-            description "Tenant name from A&AI for destination VNF";\r
-            type string;\r
-         }\r
-         leaf dest-tenant-id {\r
-            description "tenant-id from A&AI for destination VNF";\r
-            type string;\r
-         }\r
-         leaf cloud-region-id {\r
-            type string;\r
-         }\r
-         leaf cloud-owner {\r
-            type string;\r
-         }\r
-         leaf dest-network-fqdn {\r
-            type string;\r
-         }\r
-         leaf source-network-fqdn {\r
-            type string;\r
-         }\r
-         leaf source-capacity {\r
-            description "Source port pps (packets per second) rating from tosca model";\r
-            type uint32;\r
-         }\r
-         leaf source-vnf-id {\r
-            type string;\r
-         }\r
-         leaf dest-vnf-id {\r
-            description "For vProbe";\r
-            type string;\r
-         }\r
-         leaf dest-pnf-name {\r
-            description "For pProbe";\r
-            type string;\r
-         }\r
-         leaf dest-p-interface {\r
-            description "For pProbe; from policy manager";\r
-            type string;\r
-         }\r
-         leaf dest-pnf-port-policy-name {\r
-            description "For pProbe; from tosca model";\r
-            type string;\r
-         }\r
-         leaf probe-type {\r
-            description "vprobe or pprobe; derived from configuration-information.configuration-sub-type";\r
-            type string;\r
-         }\r
-         leaf route-allotted-resource-id {\r
-            description "For vProbe";\r
-            type string;\r
-         }\r
-         container source-vnfc-instance-group-id {\r
-            leaf service-instance-id {\r
-               type string;\r
-            }\r
-            leaf nfc-naming-code {\r
-               type string;\r
-            }\r
-            leaf instance-group-role {\r
-               type string;\r
-            }\r
-            leaf configuration-id {\r
-               type string;\r
-            }\r
-         }\r
-         container dest-vnfc-instance-group-id {\r
-            leaf service-instance-id {\r
-               type string;\r
-            }\r
-            leaf nfc-naming-code {\r
-               type string;\r
-            }\r
-            leaf instance-group-role {\r
-               type string;\r
-            }\r
-            leaf configuration-id {\r
-               type string;\r
-            }\r
-         }\r
-         container source-to-dest-maps {\r
-            list source-to-dest-map {\r
-               key "source-port-id";\r
-               leaf source-port-id {\r
-                  type string;\r
-                  mandatory true;\r
-               }\r
-               leaf source-port-name {\r
-                  type string;\r
-               }\r
-               leaf source-vserver-id {\r
-                  type string;\r
-               }\r
-               leaf dest-vserver-id {\r
-                  type string;\r
-               }\r
-               leaf dest-port-id {\r
-                  type string;\r
-               }\r
-               leaf dest-port-name {\r
-                  type string;\r
-               }\r
-               leaf link-name {\r
-                  type string;\r
-               }\r
-               container dest-ip-addresses {\r
-                  uses ip-addresses;\r
-               }\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping gc-topology-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses configuration-information;\r
-      uses gc-request-input;\r
-   }\r
-   grouping gc-request-input {\r
-      container gc-request-input {\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vf-module-id {\r
-            description "This is mandatory in case of rebuild";\r
-            type string;\r
-         }\r
-         container input-parameters {\r
-            uses param;\r
-         }\r
-         leaf rebuild {\r
-            description "Value will indicate what to rebuild";\r
-            type string;\r
-         }\r
-         list configuration-ids {\r
-            key "configuration-id";\r
-            leaf configuration-id {\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping vnr-parameters {\r
-      container vnr-parameters {\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vf-module-id {\r
-            description "This is mandatory in case of rebuild";\r
-            type string;\r
-         }\r
-         leaf vnf-service-instance-id {\r
-            type string;\r
-         }\r
-         leaf network-collection-service-instance-id {\r
-            description "service instance id that created network-collection";\r
-            type string;\r
-         }\r
-         leaf network-instance-group-id {\r
-            type string;\r
-         }\r
-         leaf network-id {\r
-            type string;\r
-         }\r
-         leaf vnfc-instance-group-function {\r
-            type string;\r
-         }\r
-         leaf network-instance-group-function {\r
-            type string;\r
-         }\r
-         leaf parent-port-role {\r
-            type string;\r
-         }\r
-         leaf upper-tag-id {\r
-            type uint32;\r
-         }\r
-         leaf lower-tag-id {\r
-            type uint32;\r
-         }\r
-      }\r
-   }\r
-   grouping tunnelxconn-operation-information {\r
-       uses sdnc-request-header;\r
-       uses request-information;\r
-       uses service-information;\r
-       uses allotted-resource-information;\r
-       uses tunnelxconn-request-input;\r
-   }\r
-   grouping tunnelxconn-request-input {\r
-\r
-       container tunnelxconn-request-input {\r
-           leaf brg-wan-mac-address {\r
-               type string;\r
-           }\r
-       }\r
-   }\r
-   grouping tunnelxconn-topology {\r
-       container tunnelxconn-topology {\r
-           uses allotted-resource-identifiers;\r
-           uses onap-model-information;\r
-           uses tunnelxconn-assignments;\r
-           container tunnelxconn-parameters {\r
-               uses param;\r
-           }\r
-       }\r
-   }\r
-   grouping tunnelxconn-assignments {\r
-          container tunnelxconn-assignments {\r
-              leaf vni {\r
-                  description "The Network Controller will assign a VNI value from the associated vGMUX VNI pool";\r
-                  type string;\r
-              }\r
-              leaf vgmux-bearer-ip {\r
-                  description "The Network Controller will look up the vgmux bearer ip from the vgmux vf module";\r
-                  type inet:ip-address;\r
-              }\r
-              leaf vgmux-lan-ip {\r
-                  description "The Network Controller will look up the vgmux lan ip from the vgmux vg module";\r
-                  type inet:ip-address;\r
-              }\r
-              leaf vg-ip {\r
-                  description "The Network Controller will assign the VG IP address from local inventory";\r
-                  type inet:ip-address;\r
-              }\r
-          }\r
-   }\r
-   grouping brg-operation-information {\r
-       uses sdnc-request-header;\r
-       uses request-information;\r
-       uses service-information;\r
-       uses allotted-resource-information;\r
-       uses brg-request-input;\r
-   }\r
-   grouping brg-request-input {\r
-       container brg-request-input {\r
-           leaf vgmux-bearer-ip {\r
-               type inet:ip-address;\r
-           }\r
-           leaf vni {\r
-               type string;\r
-           }\r
-           leaf brg-wan-mac-address {\r
-               type string;\r
-           }\r
-       }\r
-   }\r
-   grouping brg-topology {\r
-       container brg-topology {\r
-           uses allotted-resource-identifiers;\r
-           uses onap-model-information;\r
-           uses brg-assignments;\r
-           container brg-parameters {\r
-               uses param;\r
-           }\r
-       }\r
-   }\r
-   grouping brg-assignments {\r
-          container brg-assignments {\r
-              leaf vbrg-wan-ip {\r
-                  type inet:ip-address;\r
-              }\r
-          }\r
-   }\r
-   grouping connection-attachment-operation-information {\r
-      uses sdnc-request-header;\r
-      uses request-information;\r
-      uses service-information;\r
-      uses allotted-resource-information;\r
-      uses connection-attachment-request-input;\r
-   }\r
-\r
-   grouping connection-attachment-request-input {\r
-      container connection-attachment-request-input {\r
-         uses param;\r
-      }\r
-   }\r
-\r
-   grouping connection-attachment-topology {\r
-      container connection-attachment-topology {\r
-         uses allotted-resource-identifiers;\r
-         uses onap-model-information;\r
-         uses connection-attachment-assignments;\r
-         container connection-attachment-parameters {\r
-            uses param;\r
-         }\r
-      }\r
-   }\r
-\r
-   grouping connection-attachment-assignments {\r
-      container connection-attachment-assignments {\r
-      }\r
-   }\r
-\r
-   grouping vnf-vnr-rebuild-data {\r
-      container vnf-vnr-rebuild-data {\r
-         leaf vnf-id {\r
-            type string;\r
-         }\r
-         leaf vnf-service-instance-id {\r
-            type string;\r
-         }\r
-         list vnrs-data {\r
-            key "configuration-id";\r
-            leaf configuration-id {\r
-               type string;\r
-            }\r
-            leaf network-instance-group-id {\r
-               type string;\r
-            }\r
-            leaf network-id {\r
-               type string;\r
-            }\r
-            leaf vnfc-instance-group-function {\r
-               type string;\r
-            }\r
-            leaf network-instance-group-function {\r
-               type string;\r
-            }\r
-            leaf parent-port-role {\r
-               type string;\r
-            }\r
-            leaf upper-tag-id {\r
-               type uint32;\r
-            }\r
-            leaf lower-tag-id {\r
-               type uint32;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping allotted-resource-information {\r
-      container allotted-resource-information {\r
-         leaf allotted-resource-id {\r
-            type string;\r
-         }\r
-         leaf allotted-resource-type {\r
-            description "Not an enum, but expected values are contrail-route and security-zone.";\r
-            type string;\r
-         }\r
-         leaf parent-service-instance-id {\r
-            description "Service-instance-id of the parent service to which this allotted resource belongs.";\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping allotted-resource-identifiers {\r
-      container allotted-resource-identifiers {\r
-         leaf allotted-resource-id {\r
-            type string;\r
-         }\r
-         leaf allotted-resource-name {\r
-            description "For a contrail-route, the network policy name.";\r
-            type string;\r
-         }\r
-         leaf allotted-resource-type {\r
-            description "(Added in draft 32)Expected to be contrail-route or security-zone.";\r
-            type string;\r
-         }\r
-         leaf consuming-service-instance-id {\r
-            description "The service-instance-id of the consuming service of this allotted resource";\r
-            type string;\r
-         }\r
-         leaf parent-service-instance-id {\r
-            description "Service-instance-id of the parent service to which this allotted resource belongs.";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping allotted-resource-oper-status {\r
-      container allotted-resource-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping allotted-resource-status {\r
-      container allotted-resource-status {\r
-         leaf response-code {\r
-            type string;\r
-         }\r
-         leaf response-message {\r
-            type string;\r
-         }\r
-         leaf final-indicator {\r
-            type string;\r
-         }\r
-         leaf request-status {\r
-            type enumeration {\r
-               enum "synccomplete";\r
-               enum "asynccomplete";\r
-               enum "notifycomplete";\r
-            }\r
-         }\r
-         leaf action {\r
-            description "value would one of possible request-actions; match the list in service-data oper-status";\r
-            type string;\r
-         }\r
-         leaf rpc-name {\r
-            type string;\r
-         }\r
-         leaf rpc-action {\r
-            description "this is the svc-action from the incoming request";\r
-            type enumeration {\r
-               enum "assign";\r
-               enum "activate";\r
-               enum "create";\r
-               enum "delete";\r
-               enum "unassign";\r
-               enum "deactivate";\r
-            }\r
-         }\r
-         leaf response-timestamp {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping configuration-information {\r
-      container configuration-information {\r
-         leaf configuration-id {\r
-            type string;\r
-         }\r
-         leaf configuration-name {\r
-            type string;\r
-         }\r
-         leaf configuration-type {\r
-            description "Not an enum, but expected values are port-mirror-configuration, vlan-network-receptor";\r
-            type string;\r
-         }\r
-         leaf configuration-sub-type {\r
-            description "e.g. vprobe and pprobe when configuration-type=port-mirror-configuration";\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-      }\r
-   }\r
-   grouping configuration-identifiers {\r
-      container configuration-identifiers {\r
-         leaf configuration-id {\r
-            type string;\r
-         }\r
-         leaf configuration-name {\r
-            type string;\r
-         }\r
-         leaf configuration-type {\r
-            description "Not an enum, but expected values are port-mirror-configuration.";\r
-            type string;\r
-         }\r
-         leaf configuration-sub-type {\r
-            description " vprobe and pprobe";\r
-            type string;\r
-         }\r
-         leaf parent-service-instance-id {\r
-            description "Service-instance-id of the parent service to which this resource belongs.";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping configuration-oper-status {\r
-      container configuration-oper-status {\r
-         uses oper-status-data;\r
-      }\r
-   }\r
-   grouping configuration-status {\r
-      container configuration-status {\r
-         leaf response-code {\r
-            type string;\r
-         }\r
-         leaf response-message {\r
-            type string;\r
-         }\r
-         leaf final-indicator {\r
-            type string;\r
-         }\r
-         leaf request-status {\r
-            type enumeration {\r
-               enum "synccomplete";\r
-               enum "asynccomplete";\r
-               enum "notifycomplete";\r
-            }\r
-         }\r
-         leaf action {\r
-            description "value would one of possible request-actions; match the list in service-data oper-status";\r
-            type string;\r
-         }\r
-         leaf rpc-name {\r
-            type string;\r
-         }\r
-         leaf rpc-action {\r
-            description "this is the svc-action from the incoming request";\r
-            type enumeration {\r
-               enum "assign";\r
-               enum "activate";\r
-               enum "create";\r
-               enum "disable";\r
-               enum "enable";\r
-               enum "delete";\r
-               enum "unassign";\r
-               enum "deactivate";\r
-            }\r
-         }\r
-         leaf response-timestamp {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping topology-response-common {\r
-      leaf svc-request-id {\r
-         description "the request id from the request message for which this is the responseKeep as M";\r
-         type string;\r
-      }\r
-      leaf response-code {\r
-         description "a success code or an defined error codeKeep as M";\r
-         type string;\r
-      }\r
-      leaf response-message {\r
-         description "message included for error code";\r
-         type string;\r
-      }\r
-      leaf ack-final-indicator {\r
-         description "Expected to be Y or N.";\r
-         type string;\r
-      }\r
-   }\r
-   grouping sdnc-request-header {\r
-      container sdnc-request-header {\r
-         leaf svc-request-id {\r
-            description "Uniquely generated by calling system (e.g. MSO or SDN-GP)";\r
-            type string;\r
-         }\r
-         leaf svc-action {\r
-            description "This is the rpcAction";\r
-            type enumeration {\r
-               enum "reserve";\r
-               enum "assign";\r
-               enum "activate";\r
-               enum "delete";\r
-               enum "changeassign";\r
-               enum "changedelete";\r
-               enum "rollback";\r
-               enum "deactivate";\r
-               enum "unassign";\r
-               enum "create";\r
-               enum "disable";\r
-               enum "enable";\r
-               enum "update";\r
-               enum "reoptimize";\r
-               enum "rebuild";\r
-            }\r
-         }\r
-         leaf svc-notification-url {\r
-            description "Contains URL for asynchronous response";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping request-information {\r
-      container request-information {\r
-         leaf request-id {\r
-            description "Request ID generated upstream of MSO";\r
-            type string;\r
-         }\r
-         leaf request-action {\r
-            description "still need to work Disconnect";\r
-            type enumeration {\r
-               enum "CreateNetworkInstance";\r
-               enum "ActivateNetworkInstance";\r
-               enum "DeActivateNetworkInstance";\r
-               enum "CreateServiceInstance";\r
-               enum "DeleteServiceInstance";\r
-               enum "DeleteNetworkInstance";\r
-               enum "CreateVnfInstance";\r
-               enum "ActivateVnfInstance";\r
-               enum "DeleteVnfInstance";\r
-               enum "CreatePnfInstance";\r
-               enum "ActivatePnfInstance";\r
-               enum "DeletePnfInstance";\r
-               enum "CreateVfModuleInstance";\r
-               enum "ActivateVfModuleInstance";\r
-               enum "DeleteVfModuleInstance";\r
-               enum "CreateContrailRouteInstance";\r
-               enum "DeleteContrailRouteInstance";\r
-               enum "CreateSecurityZoneInstance";\r
-               enum "DeleteSecurityZoneInstance";\r
-               enum "ActivateDCINetworkInstance";\r
-               enum "DeActivateDCINetworkInstance";\r
-               enum "CreateTunnelXConnInstance";\r
-               enum "DeleteTunnelXConnInstance";\r
-               enum "CreateBRGInstance";\r
-               enum "DeleteBRGInstance";\r
-               enum "CreateSOTNConnectivityInstance";\r
-               enum "ActivateSOTNConnectivityInstance";\r
-               enum "DeactivateSOTNConnectivityInstance";\r
-               enum "DeleteSOTNConnectivityInstance";\r
-               enum "CreateSOTNAttachmentInstance";\r
-               enum "ActivateSOTNAttachmentInstance";\r
-               enum "DeactivateSOTNAttachmentInstance";\r
-               enum "DeleteSOTNAttachmentInstance";\r
-               enum "CreateSiteInstance";\r
-               enum "ActivateSiteInstance";\r
-               enum "DeactivateSiteInstance";\r
-               enum "DeleteSiteInstance";\r
-               enum "CreatePortMirrorConfigurationInstance";\r
-               enum "DeletePortMirrorConfigurationInstance";\r
-               enum "ChangePortMirrorConfigurationInstance";\r
-               enum "CreateGenericConfigurationInstance";\r
-               enum "RebuildGenericConfigurationInstance";\r
-               enum "DeleteGenericConfigurationInstance";\r
-               enum "PreloadVfModuleRequest";\r
-               enum "DeletePreloadVfModuleRequest";\r
-               enum "PreloadNetworkRequest";\r
-               enum "DeletePreloadNetworkRequest";\r
-               enum "CreateForwardingPathInstance";\r
-               enum "DeleteForwardingPathInstance";\r
-               enum "UpdateForwardingPathInstance";\r
-               enum "CreateSDWANDeviceInstance";\r
-               enum "ActivateSDWANDeviceInstance";\r
-               enum "DeactivateSDWANDeviceInstance";\r
-               enum "DeleteSDWANDeviceInstance";\r
-               enum "CreateSDWANPortInstance";\r
-               enum "ActivateSDWANPortInstance";\r
-               enum "DeactivateSDWANPortInstance";\r
-               enum "DeleteSDWANPortInstance";\r
-               enum "ReoptimizeSOTNInstance";\r
-               enum "CreateSDWANLanPortInstance";\r
-               enum "ActivateSDWANLanPortInstance";\r
-               enum "DeactivateSDWANLanPortInstance";\r
-               enum "DeleteSDWANLanPortInstance";\r
-               enum "CreateSDWANVpnInstance";\r
-               enum "ActivateSDWANVpnInstance";\r
-               enum "DeactivateSDWANVpnInstance";\r
-               enum "DeleteSDWANVpnInstance";\r
-               enum "CreateSDWANSiteInstance";\r
-               enum "ActivateSDWANSiteInstance";\r
-               enum "DeactivateSDWANSiteInstance";\r
-               enum "DeleteSDWANSiteInstance";\r
-               enum "SdwanBandwidthChange";\r
-               enum "CreateAccessConnectivityInstance";\r
-               enum "DeleteAccessConnectivityInstance";\r
-               enum "CreateInternetProfileInstance";\r
-               enum "ChangeInternetProfileInstance";\r
-               enum "DeleteInternetProfileInstance";\r
-               enum "CreateSOTNUnderlayInstance";\r
-               enum "ActivateSOTNUnderlayInstance";\r
-               enum "DeactivateSOTNUnderlayInstance";\r
-               enum "DeleteSOTNUnderlayInstance";\r
-               enum "CreateSOTNUniInstance";\r
-               enum "ActivateSOTNUniInstance";\r
-               enum "DeactivateSOTNUniInstance";\r
-               enum "DeleteSOTNUniInstance";\r
-               enum "CreateSOTNL2VpnInstance";\r
-               enum "ActivateSOTNL2VpnInstance";\r
-               enum "DeactivateSOTNL2VpnInstance";\r
-               enum "DeleteSOTNL2VpnInstance";\r
-            }\r
-         }\r
-         leaf source {\r
-            type string;\r
-         }\r
-         leaf notification-url {\r
-            type string;\r
-         }\r
-         leaf order-number {\r
-            type string;\r
-         }\r
-         leaf order-version {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping service-information {\r
-      container service-information {\r
-         leaf service-id {\r
-            description "This maps to the product-family-id in A&AI";\r
-            type string;\r
-         }\r
-         leaf subscription-service-type {\r
-            description "used to reference a&ai subscription-service-type. For example, we show as vIPR-ATM in example.";\r
-            type string;\r
-         }\r
-         uses onap-model-information;\r
-         leaf service-instance-id {\r
-            type string;\r
-         }\r
-         leaf global-customer-id {\r
-            description "need for put of data to AnAI (MSO provides)";\r
-            type string;\r
-         }\r
-         leaf subscriber-name {\r
-            description "Would not be expected for vIPR-ATM or mobility services.";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping onap-model-information {\r
-      container onap-model-information {\r
-         leaf model-invariant-uuid {\r
-            description "identifies the invariant uuid for this service or resource";\r
-            type string;\r
-         }\r
-         leaf model-customization-uuid {\r
-            description "customized resource for use within a given service.Would not be present at the service level but would be present for the resource level";\r
-            type string;\r
-         }\r
-         leaf model-uuid {\r
-            description "identifies the uuid for this service or resource, which is version specific";\r
-            type string;\r
-         }\r
-         leaf model-version {\r
-            type string;\r
-         }\r
-         leaf model-name {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping region-identifier {\r
-      leaf tenant {\r
-         type string;\r
-      }\r
-      leaf aic-cloud-region {\r
-         description "The AIC cloud region which maps to contrail versions";\r
-         type string;\r
-      }\r
-      leaf cloud-owner {\r
-         description "The cloud owner provided by the caller";\r
-         type string;\r
-      }\r
-      leaf aic-clli {\r
-         description "Not expected to be used";\r
-         type string;\r
-      }\r
-   }\r
-   grouping param {\r
-      list param {\r
-         key "name";\r
-         leaf name {\r
-            type string;\r
-         }\r
-         leaf value {\r
-            type string;\r
-         }\r
-         container resource-resolution-data {\r
-            list resource-key {\r
-               key "name";\r
-               leaf name {\r
-                  type string;\r
-               }\r
-               leaf value {\r
-                  type string;\r
-               }\r
-            }\r
-            leaf status {\r
-               description "SUCCESS, FAILED, or PENDING - RA returned data as capability";\r
-               type string;\r
-            }\r
-            leaf capability-name {\r
-               description "Resource assignment resolution Capability name";\r
-               type string;\r
-            }\r
-            leaf payload {\r
-               type string;\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping ip-addresses {\r
-      container ip-addresses {\r
-         leaf ipv4-address {\r
-            type inet:ip-address;\r
-         }\r
-         leaf ipv6-address {\r
-            type inet:ip-address;\r
-         }\r
-         leaf vipv4-address {\r
-            description "Virtual v4";\r
-            type inet:ip-address;\r
-         }\r
-         leaf vipv6-address {\r
-            description "Virtual v6";\r
-            type inet:ip-address;\r
-         }\r
-      }\r
-   }\r
-   grouping instance-reference {\r
-      leaf instance-id {\r
-         type string;\r
-      }\r
-      leaf object-path {\r
-         description "restconf retrieval path to this particular objectE.g. restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/service-topology/";\r
-         type string;\r
-      }\r
-   }\r
-   grouping oper-status-data {\r
-      leaf order-status {\r
-         description "TBD - do we need Request failed statuses? RequestFailed | InProgressTimeout";\r
-         type enumeration {\r
-            enum "Active";\r
-            enum "PendingAssignment";\r
-            enum "PendingCreate";\r
-            enum "PendingUpdate";\r
-            enum "PendingDelete";\r
-            enum "Deleted";\r
-            enum "Created";\r
-         }\r
-      }\r
-      leaf last-rpc-action {\r
-         type enumeration {\r
-            enum "assign";\r
-            enum "activate";\r
-            enum "delete";\r
-            enum "unassign";\r
-            enum "deactivate";\r
-            enum "create";\r
-            enum "changeassign";\r
-            enum "reoptimize";\r
-         }\r
-      }\r
-      leaf last-action {\r
-         description "should be list of possible request-actions";\r
-         type enumeration {\r
-            enum "CreateNetworkInstance";\r
-            enum "ActivateNetworkInstance";\r
-            enum "DeActivateNetworkInstance";\r
-            enum "DeleteNetworkInstance";\r
-            enum "CreateServiceInstance";\r
-            enum "DeleteServiceInstance";\r
-            enum "CreateVnfInstance";\r
-            enum "ActivateVnfInstance";\r
-            enum "DeleteVnfInstance";\r
-            enum "CreatePnfInstance";\r
-            enum "ActivatePnfInstance";\r
-            enum "DeletePnfInstance";\r
-            enum "CreateVfModuleInstance";\r
-            enum "ActivateVfModuleInstance";\r
-            enum "DeleteVfModuleInstance";\r
-            enum "CreateContrailRouteInstance";\r
-            enum "DeleteContrailRouteInstance";\r
-            enum "CreateSecurityZoneInstance";\r
-            enum "DeleteSecurityZoneInstance";\r
-            enum "ActivateDCINetworkInstance";\r
-            enum "DeActivateDCINetworkInstance";\r
-            enum "CreateTunnelXConnInstance";\r
-            enum "DeleteTunnelXConnInstance";\r
-            enum "CreateBRGInstance";\r
-            enum "DeleteBRGInstance";\r
-            enum "CreateSOTNConnectivityInstance";\r
-            enum "ActivateSOTNConnectivityInstance";\r
-            enum "DeactivateSOTNConnectivityInstance";\r
-            enum "DeleteSOTNConnectivityInstance";\r
-            enum "CreateSOTNAttachmentInstance";\r
-            enum "ActivateSOTNAttachmentInstance";\r
-            enum "DeactivateSOTNAttachmentInstance";\r
-            enum "DeleteSOTNAttachmentInstance";\r
-            enum "CreateSiteInstance";\r
-            enum "ActivateSiteInstance";\r
-            enum "DeactivateSiteInstance";\r
-            enum "DeleteSiteInstance";\r
-            enum "CreatePortMirrorConfigurationInstance";\r
-            enum "DeletePortMirrorConfigurationInstance";\r
-            enum "ChangePortMirrorConfigurationInstance";\r
-            enum "CreateGenericConfigurationInstance";\r
-            enum "DeleteGenericConfigurationInstance";\r
-            enum "PreloadVfModuleRequest";\r
-            enum "DeletePreloadVfModuleRequest";\r
-            enum "PreloadNetworkRequest";\r
-            enum "DeletePreloadNetworkRequest";\r
-            enum "CreateForwardingPathInstance";\r
-            enum "DeleteForwardingPathInstance";\r
-            enum "UpdateForwardingPathInstance";\r
-            enum "CreateSDWANDeviceInstance";\r
-            enum "ActivateSDWANDeviceInstance";\r
-            enum "DeactivateSDWANDeviceInstance";\r
-            enum "DeleteSDWANDeviceInstance";\r
-            enum "CreateSDWANPortInstance";\r
-            enum "ActivateSDWANPortInstance";\r
-            enum "DeactivateSDWANPortInstance";\r
-            enum "DeleteSDWANPortInstance";\r
-            enum "ReoptimizeSOTNInstance";\r
-            enum "CreateSDWANLanPortInstance";\r
-            enum "ActivateSDWANLanPortInstance";\r
-            enum "DeactivateSDWANLanPortInstance";\r
-            enum "DeleteSDWANLanPortInstance";\r
-            enum "CreateSDWANVpnInstance";\r
-            enum "ActivateSDWANVpnInstance";\r
-            enum "DeactivateSDWANVpnInstance";\r
-            enum "DeleteSDWANVpnInstance";\r
-            enum "CreateSDWANSiteInstance";\r
-            enum "ActivateSDWANSiteInstance";\r
-            enum "DeactivateSDWANSiteInstance";\r
-            enum "DeleteSDWANSiteInstance";\r
-            enum "SdwanBandwidthChange";\r
-            enum "CreateAccessConnectivityInstance";\r
-            enum "DeleteAccessConnectivityInstance";\r
-            enum "CreateInternetProfileInstance";\r
-            enum "ChangeInternetProfileInstance";\r
-            enum "DeleteInternetProfileInstance";\r
-            enum "CreateSOTNUnderlayInstance";\r
-            enum "ActivateSOTNUnderlayInstance";\r
-            enum "DeactivateSOTNUnderlayInstance";\r
-            enum "DeleteSOTNUnderlayInstance";\r
-            enum "CreateSOTNUniInstance";\r
-            enum "ActivateSOTNUniInstance";\r
-            enum "DeactivateSOTNUniInstance";\r
-            enum "DeleteSOTNUniInstance";\r
-            enum "CreateSOTNL2VpnInstance";\r
-            enum "ActivateSOTNL2VpnInstance";\r
-            enum "DeactivateSOTNL2VpnInstance";\r
-            enum "DeleteSOTNL2VpnInstance";\r
-         }\r
-      }\r
-      leaf last-svc-request-id {\r
-         description "Not currently populated in service data.";\r
-         type string;\r
-      }\r
-      leaf last-order-status {\r
-         type enumeration {\r
-            enum "Active";\r
-            enum "PendingAssignment";\r
-            enum "PendingCreate";\r
-            enum "PendingUpdate";\r
-            enum "PendingDelete";\r
-            enum "Deleted";\r
-            enum "Created";\r
-         }\r
-      }\r
-      leaf create-timestamp {\r
-         description "Not currently populated in service data.";\r
-         type string;\r
-      }\r
-      leaf modify-timestamp {\r
-         type string;\r
-      }\r
-   }\r
-   grouping service-response-information {\r
-      container service-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping network-response-information {\r
-      container network-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping vnf-response-information {\r
-      container vnf-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping vf-module-response-information {\r
-      container vf-module-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping pnf-response-information {\r
-      container pnf-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping contrail-route-response-information {\r
-      container contrail-route-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping security-zone-response-information {\r
-      container security-zone-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping getpathsegment-response-information {\r
-      container getpathsegment-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping port-mirror-response-information {\r
-      container port-mirror-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping gc-response-information {\r
-      container gc-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping tunnelxconn-response-information {\r
-       container tunnelxconn-response-information {\r
-           uses instance-reference;\r
-       }\r
-   }\r
-   grouping brg-response-information {\r
-       container brg-response-information {\r
-           uses instance-reference;\r
-       }\r
-   }\r
-   grouping connection-attachment-response-information {\r
-      container connection-attachment-response-information {\r
-         uses instance-reference;\r
-      }\r
-   }\r
-   grouping preload-model-information {\r
-      list preload-list {\r
-         key "preload-id preload-type";\r
-         leaf preload-id {\r
-            description "vf-module-name or network name";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf preload-type {\r
-            description "network or vf-module";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         uses preload-data;\r
-      }\r
-   }\r
-   grouping preload-data {\r
-      container preload-data {\r
-         uses preload-vf-module-topology-information;\r
-         uses preload-network-topology-information;\r
-         uses preload-oper-status;\r
-      }\r
-   }\r
-   grouping preload-vf-module-topology-information {\r
-      container preload-vf-module-topology-information {\r
-         uses vnf-topology-identifier-structure;\r
-         uses vnf-resource-assignments;\r
-         uses vf-module-topology;\r
-      }\r
-   }\r
-   grouping preload-network-topology-information {\r
-      container preload-network-topology-information {\r
-         uses network-topology-identifier-structure;\r
-         uses subnets;\r
-         uses vpn-bindings;\r
-         uses network-policy;\r
-         uses route-table-reference;\r
-         uses host-routes;\r
-         uses provider-network-information;\r
-      }\r
-   }\r
-   grouping subnets {\r
-      list subnets {\r
-         key "start-address";\r
-         leaf start-address {\r
-            type inet:ip-address;\r
-         }\r
-         leaf gateway-address {\r
-            type inet:ip-address;\r
-         }\r
-         leaf cidr-mask {\r
-            type string;\r
-         }\r
-         leaf ip-version {\r
-            type string;\r
-         }\r
-         leaf dhcp-enabled {\r
-            type enumeration {\r
-               enum "Y";\r
-               enum "N";\r
-            }\r
-         }\r
-         leaf dhcp-start-address {\r
-            type string;\r
-         }\r
-         leaf dhcp-end-address {\r
-            type string;\r
-         }\r
-         leaf addr-from-start {\r
-            description "Default is N";\r
-            type enumeration {\r
-               enum "Y";\r
-               enum "N";\r
-            }\r
-         }\r
-         leaf subnet-name {\r
-            type string;\r
-         }\r
-         leaf subnet-role {\r
-            type string;\r
-         }\r
-         leaf subnet-sequence {\r
-            type uint8;\r
-         }\r
-      }\r
-   }\r
-   grouping vpn-bindings {\r
-      list vpn-bindings {\r
-         key "vpn-binding-id";\r
-         leaf vpn-binding-id {\r
-            type string;\r
-         }\r
-         leaf vpn-name {\r
-            type string;\r
-         }\r
-         leaf global-route-target {\r
-            type string;\r
-         }\r
-         leaf route-target-role {\r
-            type string;\r
-         }\r
-         leaf aic-zone {\r
-            description "AIC Zone the route target associated with";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping network-policy {\r
-      list network-policy {\r
-         key "network-policy-fqdn";\r
-         leaf network-policy-fqdn {\r
-            type string;\r
-         }\r
-         leaf network-policy-id {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping route-table-reference {\r
-      list route-table-reference {\r
-         key "route-table-reference-fqdn";\r
-         leaf route-table-reference-fqdn {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf route-table-reference-id {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping provider-network-information {\r
-      leaf physical-network-name {\r
-         type string;\r
-      }\r
-      leaf is-provider-network {\r
-         type boolean;\r
-      }\r
-      leaf is-shared-network {\r
-         type boolean;\r
-      }\r
-      leaf is-external-network { \r
-         type boolean;\r
-      }\r
-   }\r
-   grouping host-routes {\r
-      list host-routes {\r
-         key "route-prefix";\r
-         leaf route-prefix {\r
-            type string;\r
-         }\r
-         leaf next-hop {\r
-            description "Could be ip-address or hostname or service-instance";\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   grouping preload-oper-status {\r
-      container preload-oper-status {\r
-         leaf order-status {\r
-            type enumeration {\r
-               enum "Active";\r
-               enum "PendingAssignment";\r
-               enum "PendingCreate";\r
-               enum "PendingUpdate";\r
-               enum "PendingDelete";\r
-               enum "Deleted";\r
-            }\r
-         }\r
-         leaf last-action {\r
-            type enumeration {\r
-               enum "PreloadVfModuleRequest";\r
-               enum "DeletePreloadVfModuleRequest";\r
-               enum "PreloadNetworkRequest";\r
-               enum "DeletePreloadNetworkRequest";\r
-            }\r
-         }\r
-         leaf last-svc-request-id {\r
-            type string;\r
-         }\r
-         leaf last-order-status {\r
-            type enumeration {\r
-               enum "Active";\r
-               enum "PendingAssignment";\r
-               enum "PendingCreate";\r
-               enum "PendingUpdate";\r
-               enum "PendingDelete";\r
-               enum "Deleted";\r
-            }\r
-         }\r
-         leaf create-timestamp {\r
-            type string;\r
-         }\r
-         leaf modify-timestamp {\r
-            type string;\r
-         }\r
-         leaf maintenance-indicator {\r
-            type enumeration {\r
-               enum "Y";\r
-               enum "N";\r
-            }\r
-         }\r
-      }\r
-   }\r
-   grouping preload-topology-response-body {\r
-      leaf svc-request-id {\r
-         type string;\r
-      }\r
-      leaf response-code {\r
-         type string;\r
-      }\r
-      leaf response-message {\r
-         type string;\r
-      }\r
-      leaf ack-final-indicator {\r
-         type string;\r
-      }\r
-   }\r
-   rpc generic-configuration-notification {\r
-      input {\r
-         uses sdnc-request-header;\r
-         uses request-information;\r
-         uses service-information;\r
-         uses configuration-information;\r
-         uses topology-response-common;\r
-         leaf configuration-topology-link {\r
-            description "Returns URL to generic-configuration-topology ";\r
-            type string;\r
-         }\r
-         uses vnr-parameters;\r
-         uses vnf-vnr-rebuild-data;\r
-      }\r
-   }\r
-   container services {\r
-      uses service-model-infrastructure;\r
-   }\r
-   container contrail-route-allotted-resources {\r
-      list contrail-route-allotted-resource {\r
-         key "allotted-resource-id";\r
-         leaf allotted-resource-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         container allotted-resource-data {\r
-            container allotted-resource-operation-information {\r
-               uses contrail-route-operation-information;\r
-            }\r
-            uses contrail-route-topology;\r
-            uses allotted-resource-oper-status;\r
-         }\r
-         uses allotted-resource-status;\r
-      }\r
-   }\r
-   container security-zone-allotted-resources {\r
-      list security-zone-allotted-resource {\r
-         key "allotted-resource-id";\r
-         leaf allotted-resource-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         container allotted-resource-data {\r
-            container allotted-resource-operation-information {\r
-               uses security-zone-operation-information;\r
-            }\r
-            uses security-zone-topology;\r
-            container security-zone-parameters {\r
-               uses param;\r
-            }\r
-            uses allotted-resource-oper-status;\r
-         }\r
-         uses allotted-resource-status;\r
-      }\r
-   }\r
-   container tunnelxconn-allotted-resources {\r
-       list tunnelxconn-allotted-resource {\r
-           key "allotted-resource-id";\r
-           leaf allotted-resource-id {\r
-               type string;\r
-               mandatory true;\r
-           }\r
-           container allotted-resource-data {\r
-               container allotted-resource-operation-information {\r
-                   uses tunnelxconn-operation-information;\r
-               }\r
-               uses tunnelxconn-topology;\r
-               container tunnelxconn-parameters {\r
-                   uses param;\r
-               }\r
-               uses allotted-resource-oper-status;\r
-           }\r
-           uses allotted-resource-status;\r
-       }\r
-   }\r
-   container brg-allotted-resources {\r
-       list brg-allotted-resource {\r
-           key "allotted-resource-id";\r
-           leaf allotted-resource-id {\r
-               type string;\r
-               mandatory true;\r
-           }\r
-           container allotted-resource-data {\r
-               container allotted-resource-operation-information {\r
-                   uses brg-operation-information;\r
-               }\r
-               uses brg-topology;\r
-               container brg-parameters {\r
-                   uses param;\r
-               }\r
-               uses allotted-resource-oper-status;\r
-           }\r
-           uses allotted-resource-status;\r
-       }\r
-   }\r
-   container connection-attachment-allotted-resources {\r
-      list connection-attachment-allotted-resource {\r
-         key "allotted-resource-id";\r
-         leaf allotted-resource-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         container allotted-resource-data {\r
-            container allotted-resource-operation-information {\r
-               uses connection-attachment-operation-information;\r
-            }\r
-            uses connection-attachment-topology;\r
-            container connection-attachment-parameters {\r
-               uses param;\r
-            }\r
-            uses allotted-resource-oper-status;\r
-         }\r
-         uses allotted-resource-status;\r
-      }\r
-   }\r
-   container port-mirror-configurations {\r
-      list port-mirror-configuration {\r
-         key "configuration-id";\r
-         leaf configuration-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         container configuration-data {\r
-            container configuration-operation-information {\r
-               uses port-mirror-topology-operation-information;\r
-            }\r
-            uses port-mirror-configuration-topology;\r
-            uses configuration-oper-status;\r
-         }\r
-         uses configuration-status;\r
-      }\r
-   }\r
-   container generic-configurations {\r
-      list gc-configuration {\r
-         key "configuration-id";\r
-         leaf configuration-id {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         container configuration-data {\r
-            container configuration-operation-information {\r
-               uses gc-topology-operation-information;\r
-            }\r
-            uses configuration-oper-status;\r
-         }\r
-         uses configuration-status;\r
-      }\r
-   }\r
-   rpc service-topology-operation {\r
-      input {\r
-         uses service-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc network-topology-operation {\r
-      input {\r
-         uses network-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses network-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc vnf-topology-operation {\r
-      input {\r
-         uses vnf-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses vnf-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc vf-module-topology-operation {\r
-      input {\r
-         uses vf-module-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses vf-module-response-information;\r
-         uses vnf-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc pnf-topology-operation {\r
-      input {\r
-         uses pnf-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses pnf-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc contrail-route-topology-operation {\r
-      input {\r
-         uses contrail-route-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses contrail-route-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc security-zone-topology-operation {\r
-      input {\r
-         uses security-zone-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses security-zone-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc tunnelxconn-topology-operation {\r
-       input {\r
-           uses tunnelxconn-operation-information;\r
-       }\r
-       output {\r
-           uses topology-response-common;\r
-           uses tunnelxconn-response-information;\r
-           uses service-response-information;\r
-       }\r
-   }\r
-   rpc brg-topology-operation {\r
-       input {\r
-           uses brg-operation-information;\r
-       }\r
-       output {\r
-           uses topology-response-common;\r
-           uses brg-response-information;\r
-           uses service-response-information;\r
-       }\r
-   }\r
-   rpc policy-update-notify-operation {\r
-      input {\r
-         leaf policy-name {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf version-id {\r
-            description "Map JSON versionNo to version-id";\r
-            type string;\r
-            mandatory true;\r
-         }\r
-         leaf update-type {\r
-            type string;\r
-            mandatory true;\r
-         }\r
-      }\r
-      output {\r
-         leaf error-code {\r
-            type string;\r
-         }\r
-         leaf error-msg {\r
-            type string;\r
-         }\r
-      }\r
-   }\r
-   rpc getpathsegment-topology-operation {\r
-      input {\r
-         uses forwarding-path-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses getpathsegment-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc port-mirror-topology-operation {\r
-      input {\r
-         uses port-mirror-topology-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses port-mirror-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc generic-configuration-topology-operation {\r
-      input {\r
-         uses gc-topology-operation-information;\r
-      }\r
-      output {\r
-         uses topology-response-common;\r
-         uses gc-response-information;\r
-         uses service-response-information;\r
-      }\r
-   }\r
-   rpc vnf-get-resource-request {\r
-      input {\r
-         uses sdnc-request-header;\r
-         uses request-information;\r
-         uses service-information;\r
-         uses vnf-get-resource-request-input-data;\r
-      }\r
-      output {\r
-         container vnf-get-resource-response-information {\r
-            uses vnf-cloud-param;\r
-         }\r
-      }\r
-   }\r
-   container preload-information {\r
-      uses preload-model-information;\r
-   }\r
-   rpc preload-vf-module-topology-operation {\r
-      input {\r
-         uses sdnc-request-header;\r
-         uses request-information;\r
-         uses preload-vf-module-topology-information;\r
-      }\r
-      output {\r
-         uses preload-topology-response-body;\r
-      }\r
-   }\r
-   rpc preload-network-topology-operation {\r
-      input {\r
-         uses sdnc-request-header;\r
-         uses request-information;\r
-         uses preload-network-topology-information;\r
-      }\r
-      output {\r
-         uses preload-topology-response-body;\r
-      }\r
-   }\r
-\r
-   rpc connection-attachment-topology-operation {\r
-       input {\r
-           uses connection-attachment-operation-information;\r
-       }\r
-       output {\r
-           uses topology-response-common;\r
-           uses connection-attachment-response-information;\r
-           uses service-response-information;\r
-       }\r
-   }\r
-\r
-} ////closes the module\r