Update v21 for following schema changes: 59/112059/8
authorKajur, Harish (vk250x) <vk250x@att.com>
Wed, 2 Sep 2020 15:18:22 +0000 (11:18 -0400)
committerHarish Venkata Kajur <vk250x@att.com>
Thu, 3 Sep 2020 06:34:16 +0000 (02:34 -0400)
Add hardware catalog and add props for profile
Add port list selector list vlan characteristics
Fix the vlan tags and vlan ranges
Add the v21 db edge rules for physical inventory

Issue-ID: AAI-3128
Change-Id: I295517c9e3c0830a17d4f09ffcd49501fcfd2966
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
17 files changed:
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v14.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v16.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v17.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v18.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v19.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v21.xsd
aai-schema/src/main/resources/onap/dbedgerules/v21/DbEdgeRules_v21.json
aai-schema/src/main/resources/onap/oxm/v14/aai_oxm_v14.xml
aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml
aai-schema/src/main/resources/onap/oxm/v16/aai_oxm_v16.xml
aai-schema/src/main/resources/onap/oxm/v17/aai_oxm_v17.xml
aai-schema/src/main/resources/onap/oxm/v18/aai_oxm_v18.xml
aai-schema/src/main/resources/onap/oxm/v19/aai_oxm_v19.xml
aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml
aai-schema/src/main/resources/onap/oxm/v21/aai_oxm_v21.xml

index 8c6abd7..43f281d 100644 (file)
@@ -2070,6 +2070,122 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private",dslStartNodeProps="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique ID of the vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="purpose (l3-network to be connected to)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN inner id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN outer id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="is VLAN private?")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2338,6 +2454,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -8459,67 +8576,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(namespace="network",container="vlan-tags",uniqueProps="vlan-tag-id",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique ID of the vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="purpose (l3-network to be connected to)")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN inner id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN outer id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="is VLAN private?")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -9595,7 +9651,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index fc66002..e731fee 100644 (file)
@@ -2077,6 +2077,148 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private",dslStartNodeProps="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="config-phase" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Vlan Tags Assigned out of a Vlan Range")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type",dslStartNodeProps="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2352,6 +2494,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -8610,88 +8753,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="config-phase" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -9767,7 +9828,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index 6eaa6d9..62aa7ed 100644 (file)
@@ -2077,6 +2077,148 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="config-phase" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Vlan Tags Assigned out of a Vlan Range")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2366,6 +2508,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -8685,88 +8828,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="config-phase" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -9842,7 +9903,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index fd65b36..f635601 100644 (file)
@@ -2077,6 +2077,148 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private",dslStartNodeProps="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="config-phase" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Vlan Tags Assigned out of a Vlan Range")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type",dslStartNodeProps="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2366,6 +2508,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -8692,88 +8835,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="config-phase" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -9849,7 +9910,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index 246f515..6f6c148 100644 (file)
@@ -2077,6 +2077,148 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private",dslStartNodeProps="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="config-phase" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Vlan Tags Assigned out of a Vlan Range")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type",dslStartNodeProps="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2366,6 +2508,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -8741,88 +8884,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="config-phase" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -9898,7 +9959,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index 77a7dac..bf60203 100644 (file)
@@ -2084,6 +2084,148 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="vlan-tag">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private",dslStartNodeProps="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="config-phase" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-tags">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Vlan Tags Assigned out of a Vlan Range")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-range">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vlan range",indexedProps="vlan-range-id,vlan-type",dependentOn="cloud-region",container="vlan-ranges",uriTemplate="/vlan-ranges/vlan-range/{vlan-range-id}",searchable="vlan-range-id",requiredProps="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type",dslStartNodeProps="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-range-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="vlan id in range UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-lower" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range lower")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-upper" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan id in range upper")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="vlan type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-ranges">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-range" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="esr-system-info">
     <xs:complexType>
       <xs:annotation>
@@ -2373,6 +2515,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:vip-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:vip-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:vlan-ranges" minOccurs="0"/>
         <xs:element ref="tns:hpa-capabilities" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -9404,88 +9547,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="vlan-tag">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="vlan-tag-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Vlan Tag Id")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Role assigned to this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-inner" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Inner VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Outer VLAN tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="is-private" type="xs:boolean" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="is private flag.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN tag Type")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="vlan-tag-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VLAN Tag Function")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="config-phase" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The config-phase associated with this vlan-tag")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="vlan-tags">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:vlan-tag" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="connectivity">
     <xs:complexType>
       <xs:annotation>
@@ -11101,7 +11162,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index 6d9aae1..23430d2 100644 (file)
@@ -2102,7 +2102,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -10990,7 +10990,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:configurations" minOccurs="0"/>
         <xs:element ref="tns:forwarding-paths" minOccurs="0"/>
         <xs:element ref="tns:collections" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
index 8c41bf2..941d7ef 100644 (file)
@@ -890,7 +890,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="IPv4 Address Range",indexedProps="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id",dependentOn="vlan,l-interface,vnfc,cp",uriTemplate="/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",requiredProps="l3-interface-ipv4-address")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="IPv4 Address Range",indexedProps="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id",dependentOn="vlan,l-interface,vnfc,cp,lag-interface,p-interface",uriTemplate="/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",requiredProps="l3-interface-ipv4-address")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -965,7 +965,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="IPv6 Address Range",indexedProps="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id",dependentOn="vlan,l-interface,vnfc,cp",uriTemplate="/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}",requiredProps="l3-interface-ipv6-address")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="IPv6 Address Range",indexedProps="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id",dependentOn="vlan,l-interface,vnfc,cp,lag-interface,p-interface",uriTemplate="/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}",requiredProps="l3-interface-ipv6-address")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -1288,7 +1288,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Logical interfaces, e.g., a vnic.",indexedProps="macaddr,interface-id,interface-name,network-name,interface-function,interface-role,prov-status",dependentOn="generic-vnf,newvce,p-interface,vserver,lag-interface,l-interface,pnf,pserver",container="l-interfaces",uriTemplate="/l-interfaces/l-interface/{interface-name}",searchable="interface-name",requiredProps="interface-name,is-port-mirrored,in-maint,is-ip-unnumbered")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Logical interfaces, e.g., a vnic.",indexedProps="macaddr,interface-id,interface-name,network-name,interface-type,interface-function,interface-role,prov-status",dependentOn="generic-vnf,newvce,p-interface,vserver,lag-interface,l-interface,pnf,pserver",nameProps="interface-type",container="l-interfaces",uriTemplate="/l-interfaces/l-interface/{interface-name}",searchable="interface-name",requiredProps="interface-name,is-port-mirrored,in-maint,is-ip-unnumbered")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -2055,7 +2055,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Key/value pairs",indexedProps="metaname",dependentOn="image,service-instance,connector,configuration,model-ver",container="metadata",uriTemplate="/metadata/metadatum/{metaname}",requiredProps="metaname,metaval")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Key/value pairs",indexedProps="metaname",dependentOn="image,service-instance,connector,configuration,model-ver,profile",container="metadata",uriTemplate="/metadata/metadatum/{metaname}",requiredProps="metaname,metaval")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -2260,6 +2260,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="ops-note" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
@@ -2328,6 +2335,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="ops-note" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
@@ -2336,7 +2350,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/network/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="vlan tag information",container="vlan-tags",dependentOn="vlan-range",uriTemplate="/vlan-tags/vlan-tag/{vlan-tag-id}",requiredProps="vlan-tag-id,vlan-tag-role,is-private")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -3553,7 +3567,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Link aggregate interface",indexedProps="interface-name,interface-id,interface-role,prov-status",dependentOn="generic-vnf,pserver,vpls-pe,pnf",container="lag-interfaces",uriTemplate="/lag-interfaces/lag-interface/{interface-name}",requiredProps="interface-name,in-maint")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Link aggregate interface",indexedProps="interface-name,interface-id,interface-role,interface-function,prov-status",dependentOn="generic-vnf,pserver,vpls-pe,pnf",container="lag-interfaces",uriTemplate="/lag-interfaces/lag-interface/{interface-name}",requiredProps="interface-name,in-maint")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -3650,6 +3664,8 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:l-interfaces" minOccurs="0"/>
+        <xs:element ref="tns:l3-interface-ipv4-address-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:l3-interface-ipv6-address-list" minOccurs="0" maxOccurs="5000"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
@@ -4508,7 +4524,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Logical links generally connect l-interfaces but are used to express logical connectivity between two points",indexedProps="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,link-type,purpose,operational-status",uniqueProps="link-id",container="logical-links",namespace="network",searchable="link-name",uriTemplate="/network/logical-links/logical-link/{link-name}",requiredProps="link-name,in-maint,link-type")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Logical links generally connect l-interfaces but are used to express logical connectivity between two points",indexedProps="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,link-function,link-type,purpose,operational-status",uniqueProps="link-id",container="logical-links",namespace="network",searchable="link-name",uriTemplate="/network/logical-links/logical-link/{link-name}",requiredProps="link-name,in-maint,link-type")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -7459,7 +7475,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Metadata for license group.",indexedProps="group-uuid,resource-uuid,project-number,order-number,receipt-date",dependentOn="generic-vnf,vce",container="licenses",uriTemplate="/licenses/license/{group-uuid}/{resource-uuid}",requiredProps="group-uuid,resource-uuid")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Metadata for license group.",indexedProps="group-uuid,resource-uuid,project-number,order-number,receipt-date",dependentOn="chassis,generic-vnf,vce",container="licenses",uriTemplate="/licenses/license/{group-uuid}/{resource-uuid}",requiredProps="group-uuid,resource-uuid")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -7927,6 +7943,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="metric" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Value that is assigned to an IP route for a particular network interface that identifies the cost that is associated with using that route.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -7945,11 +7968,183 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="address-family">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of address family",indexedProps="address-family-id,af-type",nameProps="address-family-id,af-type",dependentOn="bgp-group,bgp-neighbor",container="address-families",uriTemplate="/address-families/address-family/{address-family-id}",requiredProps="address-family-id,af-type")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="address-family-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="address family UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="af-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="address family type (aka afi)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="af-subtype" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="address family subtype (aka safi)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="af-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of address-family")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="af-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="function of address-family")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="address-families">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:address-family" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="bgp-neighbor">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of bgp-neighbor",indexedProps="bgp-neighbor-id",dependentOn="pnf,vrf,subnet,generic-vnf",nameProps="bgp-neighbor-id",container="bgp-neighbors",uriTemplate="/bgp-neighbors/bgp-neighbor/{bgp-neighbor-id}",requiredProps="bgp-neighbor-id,bgp-neighbor-type")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="bgp-neighbor-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="bgp-neighbor-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="name of bgp-group")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="bgp-neighbor-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="type of bgp-group")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="bgp-neighbor-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of bgp-group")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="local-as" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local a-s number type of vrf (bridge-domain as an example)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="local-address" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local address")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="peer-as" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer a-s number")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="peer-address" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer address")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="description" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="description of bgp-group")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="ops-note" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="prov-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="provisioning status. Valid values can be found at (https://wiki.web.att.com/display/SPTIIRP/prov-status).")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="peer-hostname" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="hostname of the peer")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+        <xs:element ref="tns:address-families" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="bgp-neighbors">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:bgp-neighbor" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="subnet">
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(indexedProps="subnet-id,subnet-name,orchestration-status",nameProps="subnet-name",uniqueProps="subnet-id",dependentOn="l3-network",container="subnets",uriTemplate="/subnets/subnet/{subnet-id}")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(indexedProps="subnet-id,subnet-name,subnet-type,subnet-function,orchestration-status",nameProps="subnet-name",uniqueProps="subnet-id",dependentOn="l3-network,zone",container="subnets",uriTemplate="/subnets/subnet/{subnet-id}",requiredProps="subnet-id")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -8094,7 +8289,9 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
           </xs:annotation>
         </xs:element>
         <xs:element ref="tns:host-routes" minOccurs="0"/>
+        <xs:element ref="tns:ip-address-list" minOccurs="0" maxOccurs="5000"/>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
+        <xs:element ref="tns:bgp-neighbors" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
@@ -8180,14 +8377,14 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&amp;AI. ",uniqueProps="agg-route-id",container="aggregate-routes",dependentOn="l3-network",uriTemplate="/aggregate-routes/aggregate-route/{agg-route-id}",requiredProps="agg-route-id,network-start-address,cidr-mask,ip-version")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&amp;AI. ",uniqueProps="agg-route-id",container="aggregate-routes",dependentOn="vrf,l3-network",uriTemplate="/aggregate-routes/aggregate-route/{agg-route-id}",requiredProps="agg-route-id")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
         <xs:element name="agg-route-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique id of the aggregate-route instance")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Route UUID.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -8239,7 +8436,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Generic network definition",nameProps="network-name",indexedProps="heat-stack-id,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role,orchestration-status",searchable="network-id,network-name",uniqueProps="network-id",container="l3-networks",namespace="network",uriTemplate="/network/l3-networks/l3-network/{network-id}",requiredProps="network-id,is-bound-to-vpn,is-provider-network,is-shared-network,is-external-network")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Generic network definition",nameProps="network-name",indexedProps="heat-stack-id,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role,network-function,orchestration-status",searchable="network-id,network-name",uniqueProps="network-id",container="l3-networks",namespace="network",uriTemplate="/network/l3-networks/l3-network/{network-id}",requiredProps="network-id,is-bound-to-vpn,is-provider-network,is-shared-network,is-external-network")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -8617,135 +8814,74 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="address-family">
+  <xs:element name="bgp-group">
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of address family",indexedProps="address-family-id,af-type",nameProps="address-family-id,af-type",dependentOn="bgp-group,bgp-neighbor",container="address-families",uriTemplate="/address-families/address-family/{address-family-id}",requiredProps="address-family-id,af-type")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of bgp-group",indexedProps="bgp-group-id",dependentOn="pnf,vrf,generic-vnf",nameProps="bgp-group-id,bgp-group-name",container="bgp-groups",uriTemplate="/bgp-groups/bgp-group/{bgp-group-id}",requiredProps="bgp-group-id,bgp-group-name")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
-        <xs:element name="address-family-id" type="xs:string" minOccurs="0">
+        <xs:element name="bgp-group-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="address family UUID.")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="af-type" type="xs:string" minOccurs="0">
+        <xs:element name="bgp-group-name" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="address family type (aka afi)")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="name of bgp-group")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="af-subtype" type="xs:string" minOccurs="0">
+        <xs:element name="bgp-group-type" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="address family subtype (aka safi)")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="type of bgp-group")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="af-role" type="xs:string" minOccurs="0">
+        <xs:element name="bgp-group-role" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of address-family")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of bgp-group")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="af-function" type="xs:string" minOccurs="0">
+        <xs:element name="bgp-group-function" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="function of address-family")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="function of bgp-group")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+        <xs:element name="local-as" type="xs:int" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local a-s number type of vrf (bridge-domain as an example)")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="address-families">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:address-family" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="bgp-group">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of bgp-group",indexedProps="bgp-group-id",dependentOn="pnf,vrf,generic-vnf",nameProps="bgp-group-id,bgp-group-name",container="bgp-groups",uriTemplate="/bgp-groups/bgp-group/{bgp-group-id}",requiredProps="bgp-group-id,bgp-group-name")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="bgp-group-id" type="xs:string" minOccurs="0">
+        <xs:element name="local-address" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local address")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="bgp-group-name" type="xs:string" minOccurs="0">
+        <xs:element name="peer-as" type="xs:int" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="name of bgp-group")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer a-s number")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="bgp-group-type" type="xs:string" minOccurs="0">
+        <xs:element name="peer-address" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="type of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="bgp-group-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="bgp-group-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="function of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="local-as" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local a-s number type of vrf (bridge-domain as an example)")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="local-address" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local address")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="peer-as" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer a-s number")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="peer-address" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer address")</annox:annotate>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer address")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -8782,117 +8918,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="bgp-neighbor">
-    <xs:complexType>
-      <xs:annotation>
-        <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of bgp-neighbor",indexedProps="bgp-neighbor-id",dependentOn="pnf,vrf,subnet,generic-vnf",nameProps="bgp-neighbor-id",container="bgp-neighbors",uriTemplate="/bgp-neighbors/bgp-neighbor/{bgp-neighbor-id}",requiredProps="bgp-neighbor-id,bgp-neighbor-type")</annox:annotate>
-        </xs:appinfo>
-      </xs:annotation>
-      <xs:sequence>
-        <xs:element name="bgp-neighbor-id" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="bgp-neighbor-type" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="name of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="bgp-neighbor-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="type of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="bgp-neighbor-function" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="role of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="local-as" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local a-s number type of vrf (bridge-domain as an example)")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="local-address" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="local address")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="peer-as" type="xs:int" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer a-s number")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="peer-address" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="peer address")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="description" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="description of bgp-group")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="ops-note" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="prov-status" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="provisioning status. Valid values can be found at (https://wiki.web.att.com/display/SPTIIRP/prov-status).")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="peer-hostname" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="hostname of the peer")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="resource-version" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0"/>
-        <xs:element ref="tns:address-families" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="bgp-neighbors">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="tns:bgp-neighbor" minOccurs="0" maxOccurs="5000"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="generic-vnf">
     <xs:complexType>
       <xs:annotation>
@@ -9539,7 +9564,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vrf",indexedProps="vrf-id",nameProps="vrf-name",dependentOn="pnf",container="vrfs",uriTemplate="/vrfs/vrf/{vrf-id}",requiredProps="vrf-id,vrf-name")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vrf",indexedProps="vrf-id,vrf-role,vrf-function",nameProps="vrf-name",dependentOn="pnf",container="vrfs",uriTemplate="/vrfs/vrf/{vrf-id}",requiredProps="vrf-id,vrf-name")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -9585,6 +9610,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="ops-note" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -9632,7 +9664,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.",indexedProps="pnf-name,orchestration-status,inv-status,model-invariant-id,model-version-id,operational-status,admin-status,nf-role,prov-status,nf-naming-code",searchable="pnf-name",uniqueProps="pnf-name",container="pnfs",namespace="network",uriTemplate="/network/pnfs/pnf/{pnf-name}",requiredProps="pnf-name,in-maint")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.",indexedProps="pnf-name,orchestration-status,inv-status,model-invariant-id,model-version-id,operational-status,nf-type,admin-status,nf-role,prov-status,nf-naming-code,equipment-clli",searchable="pnf-name",uniqueProps="pnf-name",container="pnfs",namespace="network",uriTemplate="/network/pnfs/pnf/{pnf-name}",requiredProps="pnf-name,in-maint")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -10319,7 +10351,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of physical connections, typically between p-interfaces",indexedProps="circuit-id,link-name",alternateKeys1="circuit-id",container="physical-links",namespace="network",searchable="link-name,circuit-id,operational-status",uriTemplate="/network/physical-links/physical-link/{link-name}",requiredProps="link-name")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of physical connections, typically between p-interfaces",indexedProps="circuit-id,link-name,link-function,link-role,link-type",alternateKeys1="circuit-id",container="physical-links",namespace="network",searchable="link-name,circuit-id,operational-status",uriTemplate="/network/physical-links/physical-link/{link-name}",requiredProps="link-name")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -10897,6 +10929,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
           </xs:annotation>
         </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
+        <xs:element ref="tns:subnets" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
@@ -13300,7 +13333,6 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:next-hops" minOccurs="0"/>
         <xs:element ref="tns:bfds" minOccurs="0"/>
         <xs:element ref="tns:fqdns" minOccurs="0"/>
-        <xs:element ref="tns:vlan-tags" minOccurs="0"/>
         <xs:element ref="tns:connectivities" minOccurs="0"/>
         <xs:element ref="tns:lan-port-configs" minOccurs="0"/>
         <xs:element ref="tns:network-resources" minOccurs="0"/>
@@ -13357,6 +13389,86 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="hardware-catalog-item">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an hardware-catalog-items",indexedProps="item-name",uniqueProps="item-name",container="hardware-catalog-items",namespace="common",uriTemplate="/common/hardware-catalog-items/hardware-catalog-item/{item-name}",requiredProps="item-name,system-type,manufacturer,model,sku")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="item-name" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique name for the hardware-catalog-item")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="system-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Type of system defined by ATT")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="manufacturer" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Manufacturer of the hardware-catalog-item (ex,Cisco)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="model" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Model of the hardware-catalog-item (ex,5501 NCS)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="part-number" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Part number assigned by the manufacturer")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="description" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Description of the hardware-catalog-item")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="sku" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Stock-keeping-unit (ATT specific identifier for the hardware-catalog-item)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="hardware-catalog-items">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of hardware-catalog-items")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:hardware-catalog-item" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="contact">
     <xs:complexType>
       <xs:annotation>
@@ -13420,7 +13532,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Profiles store the information (ex, credential-profile) and have a relationship to (ex, pnf)",uniqueProps="profile-name",container="profiles",namespace="common",nameProps="profile-name,profile-type",uriTemplate="/common/profiles/profile/{profile-name}",requiredProps="profile-name")</annox:annotate>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an profiles",indexedProps="profile-name,profile-role,profile-function",uniqueProps="profile-name",nameProps="profile-type",container="profiles",namespace="common",uriTemplate="/common/profiles/profile/{profile-name}",requiredProps="profile-name,profile-type,characteristics")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -13452,6 +13564,20 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="profile-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="used to categorize this object in conjunction with profile-type and profile-function.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="profile-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="used to categorize this object in conjunction with profile-type and profile-role. The most specific category")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="profile-selflink" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -13467,6 +13593,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
           </xs:annotation>
         </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
+        <xs:element ref="tns:metadata" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
@@ -13482,6 +13609,549 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="port-list">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Port List Range",dependentOn="endpoint,rule,object-group",uriTemplate="/port-list/{port}",requiredProps="port")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="port" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Port number")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="assignment" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name or assignment for the port")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Type or usage of the port")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="operator" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Operator to apply to the port (greater than, less than, etc).")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="selector-list">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Selectors list",dependentOn="rule,object-group,endpoint,policy",uriTemplate="/selector-list/{selector}",requiredProps="selector")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="selector" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Selector")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="assignment" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name or assignment for the selector")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Type or usage of the selector")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="rule">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an rules",container="rules",dependentOn="policy",uriTemplate="/rules/rule/{rule-id}",requiredProps="rule-id,log")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="rule-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="direction" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="ingress or egress")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="protocol" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Positive protocol match. tcp, udp, icmpv6, sctp, udplite, integer 1-255.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="not-protocol" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Negative protocol match. tcp, udp, icmpv6, sctp, udplite, integer 1-255.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="action" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Action to perform when matching this rule.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="icmp" type="xs:string" minOccurs="0" maxOccurs="5000">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="not-icmp" type="xs:string" minOccurs="0" maxOccurs="5000">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="sequence" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Sequence number of the rule.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="threshold" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Threshold")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="status")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Version")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="count-variable" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Named variable used for counting transactions.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="log" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="Boolean to indicate whether or not logging is required.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="description" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Description.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:port-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:selector-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="rules">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of rules")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:rule" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="policy">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of policy",indexedProps="policy-id",uniqueProps="policy-id",container="policies",namespace="common",uriTemplate="/common/policies/policy/{policy-id}",requiredProps="policy-id,do-not-track,pre-dnat,apply-on-forward")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="policy-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique Policy UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-name" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Policy Name")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Policy Type")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Policy role")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-function" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="policy function")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="do-not-track" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="Do not track")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="pre-dnat" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="Pre destination NAT")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="apply-on-forward" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="apply on forward")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="selector" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Host and Interface Type Selector",dbAlias="selector-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="order" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Order")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Version")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Status")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="remote-asn" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Remote ASN")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="namespace" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Namespace filter to apply the policy")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-description" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Description of the policy")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="policy-variables" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Set of rule variables")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:rules" minOccurs="0"/>
+        <xs:element ref="tns:selector-list" minOccurs="0" maxOccurs="5000"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="policies">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:policy" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-characteristic">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an vlan characteristic",indexedProps="vlan-characteristic-id",container="vlan-characteristics",namespace="common",uriTemplate="/common/vlan-characteristics/vlan-characteristic/{vlan-characteristic-id}",requiredProps="vlan-characteristic-id,dhcp-pool,internet-access")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vlan-characteristic-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="root-name" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="applies-to" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Device role the vlan-characteristic applies to (c-agg-leaf-a, c-agg-leaf-b, r-leaf).")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="dhcp-pool" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="DHCP Agent access.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="internet-access" type="xs:boolean" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(defaultValue="false",description="Boolean to represent if requires internet access.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="vlan-characteristics">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of vlan characteristics")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:vlan-characteristic" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="relationship-component">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an relationship component",indexedProps="rule-node,rule-property,rule-value,component-order",container="relationship-components",dependentOn="relationship-rule",uriTemplate="common/relationship-components/relationship-component/{rule-node}",requiredProps="rule-node,rule-property,rule-value,component-order")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="rule-node" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="NARAD object")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="rule-property" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Object property")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="rule-value" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Property value")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="component-order" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Order in traversal")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="relationship-components">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of relationship components")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:relationship-component" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="relationship-rule">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="describes an relationship rule",indexedProps="rule-id,context,rule-traversals,applies-to",uniqueProps="rule-id",container="relationship-rules",namespace="common",uriTemplate="/common/relationship-rules/relationship-rule/{rule-id}",requiredProps="rule-id,context,rule-traversals,applies-to")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="rule-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="UUID.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Example global,site")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="rule-traversals" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Number of traversals")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="applies-to" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Node the related object applies to")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-components" minOccurs="0"/>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="relationship-rules">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of relationship rules")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:relationship-rule" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="common">
     <xs:complexType>
       <xs:annotation>
@@ -13490,8 +14160,12 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
+        <xs:element ref="tns:hardware-catalog-items" minOccurs="0"/>
         <xs:element ref="tns:contacts" minOccurs="0"/>
         <xs:element ref="tns:profiles" minOccurs="0"/>
+        <xs:element ref="tns:policies" minOccurs="0"/>
+        <xs:element ref="tns:vlan-characteristics" minOccurs="0"/>
+        <xs:element ref="tns:relationship-rules" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
index ee10797..677c75f 100644 (file)
@@ -10,7 +10,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"AAI-1925"
+                       "description": "AAI-1925"
                },
                {
                        "from": "allotted-resource",
@@ -22,7 +22,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -34,7 +34,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -46,7 +46,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -58,7 +58,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -70,7 +70,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -82,7 +82,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
@@ -94,7 +94,7 @@
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "tunnel-xconnect",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "availability-zone",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "availability-zone",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "availability-zone",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "cloud-region",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "cloud-region",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "cloud-region",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "dvs-switch",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "flavor",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "group-assignment",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "image",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "oam-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "snapshot",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "tenant",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
-                       "from": "line-of-business",
-                       "to": "cloud-region",
-                       "label": "org.onap.relationships.inventory.Uses",
-                       "direction": "OUT",
-                       "multiplicity": "MANY2MANY",
-                       "contains-other-v": "NONE",
-                       "delete-other-v": "NONE",
-                       "prevent-delete": "NONE",
-                       "default": "true",
-                       "description":""
+                       "from": "line-of-business",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
                },
                {
                        "from": "volume-group",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "complex",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "ctag-pool",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "metadatum",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "connector",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "metadatum",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "element-choice-set",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "ctag-pool",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-subscription",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "dvs-switch",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-element",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "entitlement",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "license",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "network-profile",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "site-pair-set",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vf-module",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "tenant",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "metadatum",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "instance-group",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vig-server",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "ctag-assignment",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "segmentation-assignment",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"For MDONS Use case"
+                       "description": "For MDONS Use case"
                },
                {
                        "from": "subnet",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "line-of-business",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "sriov-vf",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-ver",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "constrained-element-set",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "constrained-element-set",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-constraint",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-element",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-element",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "metadatum",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "model-element",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "named-query",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "named-query-element",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "named-query-element",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "named-query-element",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "property-constraint",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "related-lookup",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "oam-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "oam-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "operational-environment",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "p-interface",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "p-interface",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "sriov-pf",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "platform",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "p-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },{
+                       "description": ""
+               },
+               {
                        "from": "pnf",
                        "to": "instance-group",
                        "label": "org.onap.relationships.inventory.Primary",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },
-                {
-                        "from": "profile",
-                        "to": "pnf",
-                        "label": "org.onap.relationships.inventory.supports",
-                        "direction": "OUT",
-                        "multiplicity": "MANY2MANY",
-                        "contains-other-v": "NONE",
-                        "delete-other-v": "NONE",
-                        "SVC-INFRA": "NONE",
-                        "prevent-delete": "NONE",
-                        "default": "true",
-                        "description":""
-                },
-                {
-                        "from": "profile",
-                        "to": "pserver",
-                        "label": "org.onap.relationships.inventory.supports",
-                        "direction": "OUT",
-                        "multiplicity": "MANY2MANY",
-                        "contains-other-v": "NONE",
-                        "delete-other-v": "NONE",
-                        "SVC-INFRA": "NONE",
-                        "prevent-delete": "NONE",
-                        "default": "true",
-                        "description":""
-                },
-                {
-                        "from": "profile",
-                        "to": "vserver",
-                        "label": "org.onap.relationships.inventory.supports",
-                        "direction": "OUT",
-                        "multiplicity": "MANY2MANY",
-                        "contains-other-v": "NONE",
-                        "delete-other-v": "NONE",
-                        "SVC-INFRA": "NONE",
-                        "prevent-delete": "NONE",
-                        "default": "true",
-                        "description":""
-                },
+                       "description": ""
+               },
+               {
+                       "from": "profile",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.supports",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "profile",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.supports",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "profile",
+                       "to": "vserver",
+                       "label": "org.onap.relationships.inventory.supports",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
                {
                        "from": "cvlan-tag",
                        "to": "port-group",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "project",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "p-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "pserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "site-pair",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "allotted-resource",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "metadatum",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "multiplicity": "ONE2MANY",
                        "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
-                       "SVC-INFRA":"NONE",
+                       "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":"MSO creates this edge on VNF Group Service creation"
+                       "description": "MSO creates this edge on VNF Group Service creation"
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "class-of-service",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "routing-instance",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "sriov-vf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "host-route",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-subscription",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "tenant",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "entitlement",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "license",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "port-group",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vce",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vce",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vce",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vf-module",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vf-module",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vf-module",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "logical-link",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "tenant",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "volume-group",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "lag-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "p-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vpls-pe",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vpls-pe",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "route-target",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vf-module",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vserver",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "zone",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarding-path",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarding-path",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "evc",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder-evc",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "nos-server",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "nos-server",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vpn-binding",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-instance",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "forwarder",
                        "default": "true",
                        "description": "Points to the generic-vnf(s) involved in this forwarding step."
                },
-        {
-            "from": "cloud-region",
-            "to": "instance-group",
-            "label": "org.onap.relationships.inventory.Uses",
-            "direction": "OUT",
-            "multiplicity": "ONE2MANY",
-            "contains-other-v": "NONE",
-            "delete-other-v": "NONE",
-            "prevent-delete": "NONE",
-            "default": "true",
-            "description": ""
-         },
-                {
+               {
+                       "from": "cloud-region",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
                        "from": "instance-group",
                        "to": "collection",
                        "label": "org.onap.inventory.BelongsTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": ""
-                },
-                {
+               },
+               {
                        "from": "service-instance",
                        "to": "collection",
                        "label": "org.onap.relationships.inventory.ComposedOf",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": ""
-                },
-                {
+               },
+               {
                        "from": "vlan-mapping",
                        "to": "forwarder-evc",
                        "label": "org.onap.relationships.inventory.BelongsTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": ""
-                },
-         {
-             "from": "allotted-resource",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "configuration",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "connector",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "generic-vnf",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "instance-group",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "l3-network",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "logical-link",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "service-instance",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "vf-module",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
-         {
-             "from": "vnfc",
-             "to": "model-ver",
-             "label": "org.onap.relationships.inventory.IsA",
-             "direction": "OUT",
-             "multiplicity": "MANY2ONE",
-             "contains-other-v": "NONE",
-             "delete-other-v": "NONE",
-             "SVC-INFRA": "NONE",
-             "prevent-delete": "!${direction}",
-             "private": "true"
-         },
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "configuration",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "connector",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "instance-group",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "vf-module",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
+               {
+                       "from": "vnfc",
+                       "to": "model-ver",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "private": "true"
+               },
                {
                        "from": "pnf",
                        "to": "model-ver",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vnfc",
                        "delete-other-v": "${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"cp is child of vnfc"
+                       "description": "cp is child of vnfc"
                },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv4-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vip-ipv6-address-list",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan-tag",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan-tag",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "vlan-tag",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l-interface",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "line-of-business",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "platform",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "l3-network",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "generic-vnf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "instance-group",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "false",
-                       "description":""
+                       "description": ""
                },
-                       {
+               {
                        "from": "cloud-region",
                        "to": "network-technology",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
-                               {
+               {
                        "from": "vrf",
                        "to": "pnf",
                        "label": "org.onap.relationships.inventory.BelongsTo",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A vrf belongs to a pnf."
+                       "description": "A vrf belongs to a pnf."
                },
                {
                        "from": "vrf",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A vrf uses a vpn-binding."
+                       "description": "A vrf uses a vpn-binding."
                },
                {
                        "from": "vrf",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A vrf uses many l3-networks"
+                       "description": "A vrf uses many l3-networks"
                },
                {
                        "from": "configuration",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A Configuration uses VRFs"
+                       "description": "A Configuration uses VRFs"
                },
                {
                        "from": "vrf",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "route-target",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "contact",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "aggregate-route",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
-                        "from": "configuration",
-                        "to": "lag-interface",
-                        "label": "org.onap.relationships.inventory.AppliesTo",
-                        "direction": "OUT",
-                        "multiplicity": "MANY2ONE",
-                        "contains-other-v": "NONE",
-                        "delete-other-v": "NONE",
-                        "prevent-delete": "NONE",
-                        "default": "true",
-                        "description":""
-                },
+                       "from": "configuration",
+                       "to": "lag-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
                {
                        "from": "communication-service-profile",
                        "to": "service-instance",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "service-profile",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
+                       "description": ""
                },
                {
                        "from": "slice-profile",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-        },{
+                       "description": ""
+               },
+               {
                        "from": "configuration",
                        "to": "lag-interface",
                        "label": "org.onap.relationships.inventory.AppliesTo",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },{
+                       "description": ""
+               },
+               {
                        "from": "configuration",
                        "to": "instance-group",
                        "label": "org.onap.relationships.inventory.PartOf",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },{
+                       "description": ""
+               },
+               {
                        "from": "owning-entity",
                        "to": "tenant",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },{
+                       "description": ""
+               },
+               {
                        "from": "line-of-business",
                        "to": "tenant",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":""
-               },{
+                       "description": ""
+               },
+               {
                        "from": "vlan-tag",
                        "to": "vlan-range",
                        "label": "org.onap.relationships.inventory.BelongsTo",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A vlan-tag belongs to a vlan-range."
-               },{
+                       "description": "A vlan-tag belongs to a vlan-range."
+               },
+               {
                        "from": "l3-network",
                        "to": "vlan-tag",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A l3-network Uses vlan-tag."
-               },{
+                       "description": "A l3-network Uses vlan-tag."
+               },
+               {
                        "from": "l-interface",
                        "to": "vlan-tag",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "!${direction}",
                        "default": "true",
-                       "description":"An sub-interface that uses a vlan-tag."
-               },{
+                       "description": "An sub-interface that uses a vlan-tag."
+               },
+               {
                        "from": "vlan-range",
                        "to": "cloud-region",
                        "label": "org.onap.relationships.inventory.BelongsTo",
                        "delete-other-v": "!${direction}",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A vlan range belongs to a cloud-region."
-               },{
+                       "description": "A vlan range belongs to a cloud-region."
+               },
+               {
                        "from": "owning-entity",
                        "to": "vlan-range",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"An owning-entity uses a vlan-range."
-               },{
+                       "description": "An owning-entity uses a vlan-range."
+               },
+               {
                        "from": "line-of-business",
                        "to": "vlan-range",
                        "label": "org.onap.relationships.inventory.Uses",
                        "delete-other-v": "NONE",
                        "prevent-delete": "NONE",
                        "default": "true",
-                       "description":"A line-of uses a vlan-range"
-               },{
+                       "description": "A line-of uses a vlan-range"
+               },
+               {
                        "from": "fqdn",
                        "to": "l3-interface-ipv4-address-list",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The fqdn that applies to a l3-interface-ipv4-address-list."
-               },{
+               },
+               {
                        "from": "fqdn",
                        "to": "l3-interface-ipv6-address-list",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The fqdn that applies to a l3-interface-ipv6-address-list."
-               },{
+               },
+               {
                        "from": "fqdn",
                        "to": "vip-ipv4-address-list",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The fqdn that applies to a vip-ipv4-address-list."
-               },{
+               },
+               {
                        "from": "fqdn",
                        "to": "vip-ipv6-address-list",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The fqdn that applies to a vip-ipv6-address-list."
-               },{
+               },
+               {
                        "from": "fqdn",
                        "to": "generic-vnf",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The fqdn that applies to a generic-vnf."
-               },{
+               },
+               {
                        "from": "fqdn",
                        "to": "fqdn",
                        "label": "org.onap.relationships.inventory.network.AppliesTo",
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description": "The dns cname record that applies to an A-record (ipv4) and/or quad-A-record (ipv6)."
+               },
+               {
+                       "from": "activity-state",
+                       "to": "activity",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "An activity-state is tracks the state of an activity."
+               },
+               {
+                       "from": "activity",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The activity applies to a cloud-region."
+               },
+               {
+                       "from": "activity",
+                       "to": "mapping",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The reservation information associated with a NAT Pool mapping."
+               },
+               {
+                       "from": "activity",
+                       "to": "network-range",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "An activity is being performed on a network-range."
+               },
+               {
+                       "from": "activity",
+                       "to": "p-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The activity applies to a p-interface."
+               },
+               {
+                       "from": "activity",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The activity applies to a pnf."
+               },
+               {
+                       "from": "activity",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The activity applies to a pserver."
+               },
+               {
+                       "from": "address-family",
+                       "to": "bgp-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Address Family belongs to a bgp-group"
+               },
+               {
+                       "from": "address-family",
+                       "to": "bgp-neighbor",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Address Family belongs to a bgp-neighbor"
+               },
+               {
+                       "from": "aggregate-route",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "An aggregate-route BelongsTo a vrf."
+               },
+               {
+                       "from": "autonomous-system",
+                       "to": "zone",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A local autonomous-system is located in a zone."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "autonomous-system",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "autonomous-system",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A bgp-group belongs to a pnf."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "vip-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "vip-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "vip-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": "To node-type is destination of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "vip-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "To node-type is source of bgp-group."
+               },
+               {
+                       "from": "bgp-group",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A bgp-group belongs to a pnf."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "autonomous-system",
+                       "label": "org.onap.relationships.inventory.network.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor is a member of an autonomous-system."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "bgp-group",
+                       "label": "org.onap.relationships.inventory.network.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor is a member of an bgp-group."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor uses To node-type."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor uses To node-type."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "logical-link",
+                       "label": "tosca.relationships.network.LinksTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A policy applies to a bgp-neighbor."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A bgp-neighbor belongs to a pnf."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "bgp-neighbor belongs To a subnet."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "vip-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor uses To node-type."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "vip-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "bgp-neighbor uses To node-type."
+               },
+               {
+                       "from": "bgp-neighbor",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A bgp-neighbor belongs to a vrf."
+               },
+               {
+                       "from": "cable",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A cable is located in a complex."
+               },
+               {
+                       "from": "cable",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The cable is this item from the hardware-catalog."
+               },
+               {
+                       "from": "cable",
+                       "to": "physical-link",
+                       "label": "org.onap.relationships.inventory.ComposedOf",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A cable is composed of one or more physical-links."
+               },
+               {
+                       "from": "card-slot",
+                       "to": "chassis",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A card-slot is located in a chassis."
+               },
+               {
+                       "from": "card",
+                       "to": "card-slot",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A card is located in a card-slot."
+               },
+               {
+                       "from": "card",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The card is described by the hardware-catalog-item."
+               },
+               {
+                       "from": "chassis",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A chassis LinksTo a complex."
+               },
+               {
+                       "from": "chassis",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The chassis is described by the hardware-catalog-item."
+               },
+               {
+                       "from": "chassis",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A chassis is part of a pnf."
+               },
+               {
+                       "from": "chassis",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A chassis is part of a pserver."
+               },
+               {
+                       "from": "chassis",
+                       "to": "rack",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "A chassis is LocatedIn a rack."
+               },
+               {
+                       "from": "chassis",
+                       "to": "rack-unit",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "A chassis uses space in a rack (aka one or more rack-units)."
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "geo-region",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The cloud-region associated to a geo-region"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.Implements",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "a cloud-region implements policies"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "project",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The cloud-region is part of a project (ex, project that built out the cloud region)."
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "service-instance",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "community-list",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "complex",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "complex",
+                       "to": "geo-region",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The complex associated to a geo-region"
+               },
+               {
+                       "from": "configuration",
+                       "to": "bgp-neighbor",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The configuration Uses bgp-neighbor."
+               },
+               {
+                       "from": "configuration",
+                       "to": "logical-link",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "configuration",
+                       "to": "network-route",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "Relates configuration to network-route for static routes."
+               },
+               {
+                       "from": "configuration",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A configuration uses a policy"
+               },
+               {
+                       "from": "configuration",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A configuration uses a subnet"
+               },
+               {
+                       "from": "configuration",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A Configuration uses VRFs"
+               },
+               {
+                       "from": "contact",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.Supports",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The contact supports a cloud-region."
+               },
+               {
+                       "from": "contact",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.Supports",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The contact supports a complex."
+               },
+               {
+                       "from": "contact",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.Supports",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The contact supports a pnf."
+               },
+               {
+                       "from": "contact",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.Supports",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The contact supports a pserver."
+               },
+               {
+                       "from": "contact",
+                       "to": "zone",
+                       "label": "org.onap.relationships.inventory.Supports",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The contact supports a zone."
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "bgp-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The bgp-group associated to a generic-vnf."
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "bgp-neighbor",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The bgp-neighbor associated to a generic-vnf."
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A relationship that ties the device to the prefix-list/community-list."
+               },
+               {
+                       "from": "host-aggregate",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "host-aggregate",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "hw-component",
+                       "to": "profile",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The profile associated to a hw-component"
+               },
+               {
+                       "from": "instance-group",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The instance-group associated to an instance-group"
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "This edge relates an object-group's ip-address-list through reference from DLP data to an ip-address from FCT in the l3-interface-ipv4-address-list of an R-Leaf's l-interface that is for VLAN 2"
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "This edge relates an object-group's ip-address-list through reference from DLP data to an ip-address from FCT in the l3-interface-ipv6-address-list of an R-Leaf's l-interface that is for VLAN 2"
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "An ip-address-list BelongsTo a policy."
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "port-list",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "rule",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "vip-ipv4-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "This edge relates an object-group's ip-address-list through reference from DLP data to an ip-address from FCT in the vip-ipv4-address-list of an R-Leaf's l-interface that is for VLAN 2"
+               },
+               {
+                       "from": "ip-address-list",
+                       "to": "vip-ipv6-address-list",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "This edge relates an object-group's ip-address-list through reference from DLP data to an ip-address from FCT in the vip-ipv6-address-list of an R-Leaf's l-interface that is for VLAN 2"
+               },
+               {
+                       "from": "l3-interface-ipv4-address-list",
+                       "to": "lag-interface",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A IPv4 address associated with a lag-interface."
+               },
+               {
+                       "from": "l3-interface-ipv4-address-list",
+                       "to": "p-interface",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A IPv4 address associated with a p-interface."
+               },
+               {
+                       "from": "l3-interface-ipv6-address-list",
+                       "to": "lag-interface",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A IPv6 address associated with a lag-interface."
+               },
+               {
+                       "from": "l3-interface-ipv6-address-list",
+                       "to": "p-interface",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A IPv6 address associated with a p-interface."
+               },
+               {
+                       "from": "l3-network",
+                       "to": "l3-network",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "l3-network uses l3-network"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "network-route",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "Relates l3-network to network-route for static routes."
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "geo-region",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The lag-interface associated to a geo-region"
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "l-interface",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "license",
+                       "to": "chassis",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A license belongs to a chassis."
+               },
+               {
+                       "from": "l-interface",
+                       "to": "next-hop",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The l-interface that is used by the next-hop."
+               },
+               {
+                       "from": "l-interface",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A logical interface associated with a pnf."
+               },
+               {
+                       "from": "l-interface",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A logical interface associated with a pserver."
+               },
+               {
+                       "from": "logical-link",
+                       "to": "port",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The port associated with a logical-link"
+               },
+               {
+                       "from": "mapping",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to a cloud-region"
+               },
+               {
+                       "from": "mapping",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.Current",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "mapping",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to an instance-group"
+               },
+               {
+                       "from": "mapping",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.Target",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "mapping",
+                       "to": "mapping",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": "The mapping associated to a mapping"
+               },
+               {
+                       "from": "mapping",
+                       "to": "mapping",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to a mapping"
+               },
+               {
+                       "from": "mapping",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to an object-group"
+               },
+               {
+                       "from": "mapping",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to a pnf"
+               },
+               {
+                       "from": "mapping",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The mapping associated to a policy"
+               },
+               {
+                       "from": "metadatum",
+                       "to": "profile",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "network-range",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The network-range is located in a cloud-region"
+               },
+               {
+                       "from": "network-range",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The network-range is located in a complex"
+               },
+               {
+                       "from": "network-range",
+                       "to": "zone",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The network-range is located in a zone"
+               },
+               {
+                       "from": "network-route",
+                       "to": "next-hop",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The network-route that is used by the next-hop."
+               },
+               {
+                       "from": "network-route",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The route is part of part of a route-list that is modeled in an object-group."
+               },
+               {
+                       "from": "network-route",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The route is part of part of a subnet."
+               },
+               {
+                       "from": "next-hop",
+                       "to": "bfd",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "object-group",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The object-group is located in a cloud-region"
+               },
+               {
+                       "from": "object-group",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The object-group is located in a complex"
+               },
+               {
+                       "from": "object-group",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The object-gorup that applies to an object-group"
+               },
+               {
+                       "from": "object-group",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "object-group",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The object-group to VRF for various route types."
+               },
+               {
+                       "from": "object-group",
+                       "to": "zone",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The object-group is located in a zone"
+               },
+               {
+                       "from": "pdu",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The pdu is described by the hardware-catalog-item."
+               },
+               {
+                       "from": "pdu",
+                       "to": "rack",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pdu is located in a building (aka complex)."
+               },
+               {
+                       "from": "pdu",
+                       "to": "rack-unit",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "A pdu uses space in a rack (aka one or more rack-units)."
+               },
+               {
+                       "from": "pluggable-slot",
+                       "to": "card",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pluggable slot is located in a card."
+               },
+               {
+                       "from": "pluggable-slot",
+                       "to": "chassis",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pluggable-slot is located in a chassis."
+               },
+               {
+                       "from": "pluggable",
+                       "to": "cable",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pluggable that is intergrated with a cable."
+               },
+               {
+                       "from": "pluggable",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The pluggable is described by the hardware-catalog-item."
+               },
+               {
+                       "from": "pluggable",
+                       "to": "pluggable-slot",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pluggable is located in a pluggable-slot."
+               },
+               {
+                       "from": "pnf",
+                       "to": "autonomous-system",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "pnf is located in the autonomous-system."
+               },
+               {
+                       "from": "pnf",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pnf is located in (aka supports) a cloud-region."
+               },
+               {
+                       "from": "pnf",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": "used for CSP pnf to cloud-region."
+               },
+               {
+                       "from": "pnf",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "pnf",
+                       "to": "hw-component",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The hw-component associated to a pnf"
+               },
+               {
+                       "from": "pnf",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A pnf uses policies"
+               },
+               {
+                       "from": "pnf",
+                       "to": "project",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The pnf is part of a project (ex, VPMO that ordered the equipment)."
+               },
+               {
+                       "from": "pnf",
+                       "to": "sw-component",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The sw-component associated to a pnf"
+               },
+               {
+                       "from": "policy",
+                       "to": "address-family",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A policy applies to an address family."
+               },
+               {
+                       "from": "policy",
+                       "to": "bgp-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A policy applies to a bgp-group."
+               },
+               {
+                       "from": "policy",
+                       "to": "bgp-neighbor",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A policy applies to a bgp-neighbor."
+               },
+               {
+                       "from": "policy",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The policy associated to an instance-group"
+               },
+               {
+                       "from": "policy",
+                       "to": "l3-network",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A policy applies to l3-networks."
+               },
+               {
+                       "from": "policy",
+                       "to": "l-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The policy applies to an l-interface."
+               },
+               {
+                       "from": "policy",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "policy",
+                       "to": "rule",
+                       "label": "org.onap.relationships.inventory.Implements",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "policy",
+                       "to": "vlan-tag",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "This edge allows for QOS policy to vlan-tag relationship. For a given policy get all vlan tags as well as for a given vlan-tag get all the policies."
+               },
+               {
+                       "from": "policy",
+                       "to": "vpn-binding",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A policy uses vpn-bindings"
+               },
+               {
+                       "from": "policy",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "port-list",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "port-list",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "port-list",
+                       "to": "rule",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "port",
+                       "to": "cable",
+                       "label": "tosca.relationships.network.LinksTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A channel-interface terminates a channel-link."
+               },
+               {
+                       "from": "port",
+                       "to": "card",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A port is located in a card."
+               },
+               {
+                       "from": "port",
+                       "to": "chassis",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A port is LocatedIn a chassis."
+               },
+               {
+                       "from": "port",
+                       "to": "p-interface",
+                       "label": "org.onap.relationships.inventory.ComposedOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A port is composed of one or more p-interfaces."
+               },
+               {
+                       "from": "port",
+                       "to": "pluggable",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A port is located in a pluggable."
+               },
+               {
+                       "from": "port",
+                       "to": "port",
+                       "label": "org.onap.relationships.inventory.LinksTo",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A port LinksTo another port."
+               },
+               {
+                       "from": "profile",
+                       "to": "card",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) applies to the card."
+               },
+               {
+                       "from": "profile",
+                       "to": "chassis",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "None",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) applies to the chassis."
+               },
+               {
+                       "from": "profile",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "profile",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the endpoint."
+               },
+               {
+                       "from": "profile",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A set of characteristics of the hardware-catalog-item."
+               },
+               {
+                       "from": "profile",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the instance-group (as a vrrp group)."
+               },
+               {
+                       "from": "profile",
+                       "to": "l3-network",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the l3-network."
+               },
+               {
+                       "from": "profile",
+                       "to": "lag-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the lag-interface."
+               },
+               {
+                       "from": "profile",
+                       "to": "l-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the l-interface."
+               },
+               {
+                       "from": "profile",
+                       "to": "logical-link",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the logical-link."
+               },
+               {
+                       "from": "profile",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) classifies the object-group."
+               },
+               {
+                       "from": "profile",
+                       "to": "pdu",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "None",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) applies to the pdu."
+               },
+               {
+                       "from": "profile",
+                       "to": "physical-link",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the physical-link."
+               },
+               {
+                       "from": "profile",
+                       "to": "p-interface",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the p-interface."
+               },
+               {
+                       "from": "profile",
+                       "to": "pluggable",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) applies to the pluggable."
+               },
+               {
+                       "from": "profile",
+                       "to": "pnf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the pnf."
+               },
+               {
+                       "from": "profile",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the policy."
+               },
+               {
+                       "from": "profile",
+                       "to": "pserver",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the pserver."
+               },
+               {
+                       "from": "profile",
+                       "to": "rack",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "The profile (set of characteristics) applies to the rack."
+               },
+               {
+                       "from": "profile",
+                       "to": "subnet",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the subnet."
+               },
+               {
+                       "from": "profile",
+                       "to": "vlan-range",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the vlan-range."
+               },
+               {
+                       "from": "profile",
+                       "to": "vlan-tag",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the vlan-tag."
+               },
+               {
+                       "from": "profile",
+                       "to": "vpn-binding",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the vpn-binding."
+               },
+               {
+                       "from": "profile",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "A profile (set of characteristics) applies to the vrf."
+               },
+               {
+                       "from": "pserver",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "pserver",
+                       "to": "hw-component",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The hw-component associated to a pserver"
+               },
+               {
+                       "from": "pserver",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.Implements",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "pserver",
+                       "to": "project",
+                       "label": "org.onap.relationships.inventory.PartOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The pserver is part of a project (ex, VPMO that ordered the equipment)."
+               },
+               {
+                       "from": "pserver",
+                       "to": "sw-component",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The sw-component associated to a pserver"
+               },
+               {
+                       "from": "rack",
+                       "to": "complex",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A rack is located in a complex (aka building)."
+               },
+               {
+                       "from": "rack",
+                       "to": "hardware-catalog-item",
+                       "label": "org.onap.relationships.inventory.IsA",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The rack is this item from the hardware-catalog."
+               },
+               {
+                       "from": "rack",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": "The rack is a member of the instance-group (rack-group or pod)."
+               },
+               {
+                       "from": "rack-unit",
+                       "to": "rack",
+                       "label": "org.onap.relationships.inventory.LocatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A rack-unit is located in a rack."
+               },
+               {
+                       "from": "relationship-component",
+                       "to": "relationship-rule",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Defines the traversal needed to reach the node of relationship-rule"
+               },
+               {
+                       "from": "relationship-rule",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "Details relationships endpoint requires"
+               },
+               {
+                       "from": "relationship-rule",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Details relationships object-group requires"
+               },
+               {
+                       "from": "relationship-rule",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Details relationships policy requires."
+               },
+               {
+                       "from": "relationship-rule",
+                       "to": "profile",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "Details relationships profile requires."
+               },
+               {
+                       "from": "rule",
+                       "to": "next-hop",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The rule that is used by the next-hop. For CG-NAT these are the ACL policies."
+               },
+               {
+                       "from": "rule",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "rule",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.Destination",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "rule",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.Source",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "false",
+                       "description": ""
+               },
+               {
+                       "from": "rule",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "selector-list",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "selector-list",
+                       "to": "object-group",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "selector-list",
+                       "to": "policy",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "selector-list",
+                       "to": "rule",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "service-instance",
+                       "to": "l3-network",
+                       "label": "org.onap.relationships.inventory.ComposedOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "service-instance",
+                       "to": "owning-entity",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": "service-instance Uses an owning-entity"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "service-subscription",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "service-instance BelongsTo service-subscription"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "vrf",
+                       "label": "org.onap.relationships.inventory.ComposedOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "This edge relates a vrf that is configured on a pnf to the service-instances that the vrf supports."
+               },
+               {
+                       "from": "service-subscription",
+                       "to": "customer",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "service-subscription BelongsTo customer"
+               },
+               {
+                       "from": "subnet",
+                       "to": "zone",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A fabric subnet belongs to a zone."
+               },
+               {
+                       "from": "sw-component",
+                       "to": "profile",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The profile associated to a sw-component"
+               },
+               {
+                       "from": "validation-audit",
+                       "to": "cloud-region",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The validation-audit associated to a cloud-region"
+               },
+               {
+                       "from": "validation-audit",
+                       "to": "line-of-business",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The line-of-business associated to a validation-audit"
+               },
+               {
+                       "from": "vlan-characteristic",
+                       "to": "vlan-tag",
+                       "label": "org.onap.relationships.inventory.AppliesTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "vpn-binding",
+                       "to": "aggregate-route",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "ONE2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "A vpn-binding uses many aggregate routes"
+               },
+               {
+                       "from": "vrf",
+                       "to": "network-route",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": "Relates vrf to network-route for static routes."
+               },
+               {
+                       "from": "vrf",
+                       "to": "next-hop",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The vrfs that are used by the next-hop."
+               },
+               {
+                       "from": "vserver",
+                       "to": "instance-group",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "vserver",
+                       "to": "sw-component",
+                       "label": "org.onap.relationships.inventory.MemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description": "The sw-component associated to a vserver"
+               },
+               {
+                       "from": "zone",
+                       "to": "endpoint",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}",
+                       "default": "true",
+                       "description": ""
+               },
+               {
+                       "from": "zone",
+                       "to": "service-instance",
+                       "label": "org.onap.relationships.inventory.Uses",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2MANY",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "false",
+                       "description": ""
                }
-
        ]
 }
-
index 3fc2b16..6de41c6 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v14.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v14.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v14.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v14.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v14.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v14.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v14.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v14.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v14.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v14.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v14.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v14.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+               <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v14.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v14.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v14.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v14.RelationshipList"/>
             </java-attributes>
             <xml-properties>
-                <xml-property name="namespace" value="network"/>
+                <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
-                <xml-property name="uniqueProps" value="vlan-tag-id"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="dependentOn" value="vlan-range"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
+                <xml-property name="dslStartNodeProps" value="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function"/>
             </xml-properties>
         </java-type>
 
index 7f5d8fb..306b36c 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v15.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v15.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v15.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v15.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v15.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v15.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v15.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v15.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v15.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v15.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v15.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v15.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v15.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v15.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v15.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+                <xml-property name="dslStartNodeProps" value="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
+            <xml-properties>
+                <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
+            </xml-properties>
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v15.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
+                <xml-property name="dslStartNodeProps" value="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function"/>
             </xml-properties>
         </java-type>
 
index 122f8f9..8ea9912 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v16.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v16.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v16.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v16.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v16.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v16.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v16.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v16.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v16.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v16.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v16.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v16.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v16.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v16.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v16.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
+            <xml-properties>
+                <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
+            </xml-properties>
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v16.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
             </xml-properties>
         </java-type>
index 49e25e7..58c3fdb 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v17.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v17.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v17.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v17.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v17.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v17.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v17.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v17.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v17.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v17.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v17.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v17.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v17.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v17.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v17.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+                <xml-property name="dslStartNodeProps" value="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
+            <xml-properties>
+                <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
+            </xml-properties>
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v17.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
+                <xml-property name="dslStartNodeProps" value="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function"/>
             </xml-properties>
         </java-type>
 
index 14b5463..719aeee 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v18.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v18.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v18.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v18.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v18.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v18.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v18.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v18.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v18.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v18.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v18.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v18.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v18.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v18.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v18.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+                <xml-property name="dslStartNodeProps" value="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
+            <xml-properties>
+                <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
+            </xml-properties>
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v18.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
+                <xml-property name="dslStartNodeProps" value="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function"/>
             </xml-properties>
         </java-type>
 
index 34b7289..fc83e81 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v19.RelationshipList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v19.VipIpv4AddressList"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v19.VipIpv6AddressList"/>
+                               <xml-element java-attribute="vlanRanges" name="vlan-ranges" type="inventory.aai.onap.org.v19.VlanRanges"/>
                                <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v19.HpaCapabilities">
                                        <xml-properties>
                                                <xml-property name="description" value="List of cloud-region specific HPA Capabilities"/>
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v19.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v19.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v19.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v19.VlanTags"/>
                                <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v19.Connectivities"/>
                                <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v19.LanPortConfigs"/>
                                <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v19.NetworkResources"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanRanges">
+            <xml-root-element name="vlan-ranges"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanRange" name="vlan-range" type="inventory.aai.onap.org.v19.VlanRange"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VlanRange">
+            <xml-root-element name="vlan-range"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanRangeId" name="vlan-range-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdLower" name="vlan-id-lower" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range lower"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdUpper" name="vlan-id-upper" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan id in range upper"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanType" name="vlan-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vlan type"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v19.VlanTags"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v19.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan range"/>
+                <xml-property name="indexedProps" value="vlan-range-id,vlan-type"/>
+                <xml-property name="dependentOn" value="cloud-region"/>
+                <xml-property name="container" value="vlan-ranges"/>
+                <xml-property name="uriTemplate" value="/vlan-ranges/vlan-range/{vlan-range-id}"/>
+                <xml-property name="searchable" value="vlan-range-id"/>
+                <xml-property name="requiredProps" value="vlan-range-id,vlan-id-lower,vlan-id-upper,vlan-type"/>
+                <xml-property name="dslStartNodeProps" value="vlan-range-id,vlan-type,vlan-id-lower,vlan-id-upper"/>
+            </xml-properties>
+        </java-type>
+
         <java-type name="VlanTags">
+            <xml-properties>
+                <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
+            </xml-properties>
             <xml-root-element name="vlan-tags"/>
             <java-attributes>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v19.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
+                <xml-property name="dslStartNodeProps" value="vlan-tag-id,vlan-tag-role,vlan-tag-type,vlan-id-inner,vlan-id-outer,config-phase,vlan-tag-function"/>
             </xml-properties>
         </java-type>
 
index c14a833..fb6f889 100644 (file)
                 <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v20.Configurations"/>
                 <xml-element java-attribute="forwardingPaths" name="forwarding-paths" type="inventory.aai.onap.org.v20.ForwardingPaths"/>
                 <xml-element java-attribute="collections" name="collections" type="inventory.aai.onap.org.v20.Collections"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v20.VlanTags"/>
                 <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v20.Connectivities"/>
                 <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v20.LanPortConfigs"/>
                 <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v20.NetworkResources"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v20.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
             </xml-properties>
         </java-type>
index 57c73c9..8735a40 100644 (file)
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="Logical interfaces, e.g., a vnic."/>
-                <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name,interface-function,interface-role,prov-status"/>
+                <xml-property name="indexedProps" value="macaddr,interface-id,interface-name,network-name,interface-type,interface-function,interface-role,prov-status"/>
                 <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface,l-interface,pnf,pserver"/>
+                <xml-property name="nameProps" value="interface-type"/>
                 <xml-property name="container" value="l-interfaces"/>
                 <xml-property name="uriTemplate" value="/l-interfaces/l-interface/{interface-name}"/>
                 <xml-property name="searchable" value="interface-name"/>
             <xml-properties>
                 <xml-property name="description" value="IPv4 Address Range"/>
                 <xml-property name="indexedProps" value="l3-interface-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id"/>
-                <xml-property name="dependentOn" value="vlan,l-interface,vnfc,cp"/>
+                <xml-property name="dependentOn" value="vlan,l-interface,vnfc,cp,lag-interface,p-interface"/>
                 <xml-property name="uriTemplate" value="/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}"/>
                 <xml-property name="requiredProps" value="l3-interface-ipv4-address"/>
              </xml-properties>
             <xml-properties>
                 <xml-property name="description" value="IPv6 Address Range"/>
                 <xml-property name="indexedProps" value="l3-interface-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id"/>
-                <xml-property name="dependentOn" value="vlan,l-interface,vnfc,cp"/>
+                <xml-property name="dependentOn" value="vlan,l-interface,vnfc,cp,lag-interface,p-interface"/>
                 <xml-property name="uriTemplate" value="/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}"/>
                 <xml-property name="requiredProps" value="l3-interface-ipv6-address"/>
             </xml-properties>
             <xml-properties>
                 <xml-property name="description" value="Key/value pairs"/>
                 <xml-property name="indexedProps" value="metaname"/>
-                <xml-property name="dependentOn" value="image,service-instance,connector,configuration,model-ver"/>
+                <xml-property name="dependentOn" value="image,service-instance,connector,configuration,model-ver,profile"/>
                 <xml-property name="container" value="metadata"/>
                 <xml-property name="uriTemplate" value="/metadata/metadatum/{metaname}"/>
                 <xml-property name="requiredProps" value="metaname,metaval"/>
                 </xml-element>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
                 <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v21.LInterfaces"/>
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v21.L3InterfaceIpv4AddressList"/>
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v21.L3InterfaceIpv6AddressList"/>
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="Link aggregate interface"/>
-                <xml-property name="indexedProps" value="interface-name,interface-id,interface-role,prov-status"/>
+                <xml-property name="indexedProps" value="interface-name,interface-id,interface-role,interface-function,prov-status"/>
                 <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf"/>
                 <xml-property name="container" value="lag-interfaces"/>
                 <xml-property name="uriTemplate" value="/lag-interfaces/lag-interface/{interface-name}"/>
                         <xml-property name="description" value="IP address family (v6/v4/both)"/>
                     </xml-properties>
                 </xml-element>
+                <xml-element java-attribute="opsNote" name="ops-note" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object."/>
+                    </xml-properties>
+                </xml-element>
                 <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="Definition of vrf"/>
-                <xml-property name="indexedProps" value="vrf-id"/>
+                <xml-property name="indexedProps" value="vrf-id,vrf-role,vrf-function"/>
                 <xml-property name="nameProps" value="vrf-name"/>
                 <xml-property name="dependentOn" value="pnf"/>
                 <xml-property name="container" value="vrfs"/>
                                <xml-element java-attribute="nextHops" name="next-hops" type="inventory.aai.onap.org.v21.NextHops"/>
                                <xml-element java-attribute="bfds" name="bfds" type="inventory.aai.onap.org.v21.Bfds"/>
                                <xml-element java-attribute="fqdns" name="fqdns" type="inventory.aai.onap.org.v21.Fqdns"/>
-                <xml-element java-attribute="vlanTags" name="vlan-tags" type="inventory.aai.onap.org.v21.VlanTags"/>
                 <xml-element java-attribute="connectivities" name="connectivities" type="inventory.aai.onap.org.v21.Connectivities"/>
                 <xml-element java-attribute="lanPortConfigs" name="lan-port-configs" type="inventory.aai.onap.org.v21.LanPortConfigs"/>
                 <xml-element java-attribute="networkResources" name="network-resources" type="inventory.aai.onap.org.v21.NetworkResources"/>
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points"/>
-                               <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,link-type,purpose,operational-status"/>
+                               <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,link-function,link-type,purpose,operational-status"/>
                 <xml-property name="uniqueProps" value="link-id"/>
                 <xml-property name="container" value="logical-links"/>
                 <xml-property name="namespace" value="network"/>
                 <xml-property name="description" value="Generic network definition"/>
                 <xml-property name="nameProps" value="network-name"/>
                <xml-property name="indexedProps" 
-                              value="heat-stack-id,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role,orchestration-status"/>
+                              value="heat-stack-id,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role,network-function,orchestration-status"/>
                 <xml-property name="searchable" value="network-id,network-name"/>
                 <xml-property name="uniqueProps" value="network-id"/>
                 <xml-property name="container" value="l3-networks"/>
                     </xml-properties>
                 </xml-element>
                 <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v21.HostRoutes"/>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipAddressList" name="ip-address-list" type="inventory.aai.onap.org.v21.IpAddressList"/>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+                <xml-element java-attribute="bgpNeighbors" name="bgp-neighbors" type="inventory.aai.onap.org.v21.BgpNeighbors"/>
             </java-attributes>
             <xml-properties>
-                <xml-property name="indexedProps" value="subnet-id,subnet-name,orchestration-status"/>
+                <xml-property name="indexedProps" value="subnet-id,subnet-name,subnet-type,subnet-function,orchestration-status"/>
                 <xml-property name="nameProps" value="subnet-name"/>
                 <xml-property name="uniqueProps" value="subnet-id"/>
-                <xml-property name="dependentOn" value="l3-network"/>
+                <xml-property name="dependentOn" value="l3-network,zone"/>
                 <xml-property name="container" value="subnets"/>
                 <xml-property name="uriTemplate" value="/subnets/subnet/{subnet-id}"/>
+                <xml-property name="requiredProps" value="subnet-id"/>
              </xml-properties>
         </java-type>
 
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE."/>
-                <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status,model-invariant-id,model-version-id,operational-status,admin-status,nf-role,prov-status,nf-naming-code"/>
+                <xml-property name="indexedProps" value="pnf-name,orchestration-status,inv-status,model-invariant-id,model-version-id,operational-status,nf-type,admin-status,nf-role,prov-status,nf-naming-code,equipment-clli"/>
                 <xml-property name="searchable" value="pnf-name"/>
                 <xml-property name="uniqueProps" value="pnf-name"/>
                 <xml-property name="container" value="pnfs"/>
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="Collection of physical connections, typically between p-interfaces"/>
-                <xml-property name="indexedProps" value="circuit-id,link-name"/>
+                <xml-property name="indexedProps" value="circuit-id,link-name,link-function,link-role,link-type"/>
                 <xml-property name="alternateKeys1" value="circuit-id"/>
                 <xml-property name="container" value="physical-links"/>
                 <xml-property name="namespace" value="network"/>
             <xml-properties>
                 <xml-property name="description" value="Metadata for license group."/>
                 <xml-property name="indexedProps" value="group-uuid,resource-uuid,project-number,order-number,receipt-date"/>
-                <xml-property name="dependentOn" value="generic-vnf,vce"/>
+                <xml-property name="dependentOn" value="chassis,generic-vnf,vce"/>
                 <xml-property name="container" value="licenses"/>
                 <xml-property name="uriTemplate" value="/licenses/license/{group-uuid}/{resource-uuid}"/>
             <xml-property name="requiredProps" value="group-uuid,resource-uuid"/>
                     </xml-properties>
                 </xml-element>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+                <xml-element java-attribute="subnets" name="subnet" type="inventory.aai.onap.org.v21.Subnets"/>
             </java-attributes>
             <xml-properties>
                 <xml-property name="description" value="A zone is a grouping of assets in a location homing to the same connections into the CBB"/>
                         <xml-property name="description" value="Should be ip-address, hostname, or service-instance to match next-hop"/>
                     </xml-properties>
                 </xml-element>
+                <xml-element java-attribute="metric" name="metric" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Value that is assigned to an IP route for a particular network interface that identifies the cost that is associated with using that route."/>
+                    </xml-properties>
+                </xml-element>
                 <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
                         <xml-property name="description" value="Neutron id of subnet that address belongs to"/>
                     </xml-properties>
                 </xml-element>
+                <xml-element java-attribute="opsNote" name="ops-note" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object."/>
+                    </xml-properties>
+                </xml-element>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
             </java-attributes>
             <xml-properties>
                         <xml-property name="description" value="Neutron id of subnet that address belongs to"/>
                     </xml-properties>
                 </xml-element>
+                <xml-element java-attribute="opsNote" name="ops-note" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Notes to aid OPs in troubleshooting, such as attribute aliases or additional descriptions/instructions about an object."/>
+                    </xml-properties>
+                </xml-element>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
             </java-attributes>
             <xml-properties>
             </xml-properties>
         </java-type>
 
-
         <java-type name="VlanTags">
             <xml-properties>
                 <xml-property name="description" value="Vlan Tags Assigned out of a Vlan Range"/>
                 <xml-element container-type="java.util.ArrayList" java-attribute="vlanTag" name="vlan-tag" type="inventory.aai.onap.org.v21.VlanTag"/>
             </java-attributes>
         </java-type>
-
         <java-type name="VlanTag">
             <xml-root-element name="vlan-tag"/>
             <java-attributes>
                         <xml-property name="description" value="Inner VLAN tag"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" required="true" type="java.lang.Long">
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
                     <xml-properties>
                         <xml-property name="description" value="Outer VLAN tag"/>
                     </xml-properties>
                         <xml-property name="description" value="is private flag."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagType" name="vlan-tag-type" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN tag Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
+                               <xml-element java-attribute="vlanTagFunction" name="vlan-tag-function" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="VLAN Tag Function"/>
                     </xml-properties>
                 <xml-property name="description" value="vlan tag information"/>
                 <xml-property name="container" value="vlan-tags"/>
                 <xml-property name="dependentOn" value="vlan-range"/>
-                <xml-property name="uriTemplate" value="/network/vlan-tags/vlan-tag/{vlan-tag-id}"/>
+                <xml-property name="uriTemplate" value="/vlan-tags/vlan-tag/{vlan-tag-id}"/>
                 <xml-property name="requiredProps" value="vlan-tag-id,vlan-tag-role,is-private"/>
             </xml-properties>
         </java-type>
             </xml-properties>
             <xml-root-element name="common"/>
             <java-attributes>
+               <xml-element java-attribute="hardwareCatalogItems" name="hardware-catalog-items" type="inventory.aai.onap.org.v21.HardwareCatalogItems"/>
                <xml-element java-attribute="contacts" name="contacts" type="inventory.aai.onap.org.v21.Contacts"/>
               <xml-element java-attribute="profiles" name="profiles" type="inventory.aai.onap.org.v21.Profiles"/>
+                               <xml-element java-attribute="policies" name="policies" type="inventory.aai.onap.org.v21.Policies"/>
+                               <xml-element java-attribute="vlanCharacteristics" name="vlan-characteristics" type="inventory.aai.onap.org.v21.VlanCharacteristics"/>
+                               <xml-element java-attribute="relationshipRules" name="relationship-rules" type="inventory.aai.onap.org.v21.RelationshipRules"/>
             </java-attributes>
                </java-type>
 
+               <java-type name="HardwareCatalogItems">
+            <xml-properties>
+                <xml-property name="description" value="Collection of hardware-catalog-items"/>
+            </xml-properties>
+            <xml-root-element name="hardware-catalog-items"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="hardwareCatalogItem" name="hardware-catalog-item" type="inventory.aai.onap.org.v21.HardwareCatalogItem"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="HardwareCatalogItem">
+            <xml-root-element name="hardware-catalog-item"/>
+            <java-attributes>
+                <xml-element java-attribute="itemName" name="item-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique name for the hardware-catalog-item"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemType" name="system-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of system defined by ATT"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="manufacturer" name="manufacturer" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Manufacturer of the hardware-catalog-item (ex,Cisco)"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="model" name="model" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Model of the hardware-catalog-item (ex,5501 NCS)"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="partNumber" name="part-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Part number assigned by the manufacturer"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description of the hardware-catalog-item"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sku" name="sku" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Stock-keeping-unit (ATT specific identifier for the hardware-catalog-item)"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an hardware-catalog-items"/>
+                <xml-property name="indexedProps" value="item-name"/>
+                <xml-property name="uniqueProps" value="item-name"/>
+                <xml-property name="container" value="hardware-catalog-items"/>
+                <xml-property name="namespace" value="common"/>
+                <xml-property name="uriTemplate" value="/common/hardware-catalog-items/hardware-catalog-item/{item-name}"/>
+                <xml-property name="requiredProps" value="item-name,system-type,manufacturer,model,sku"/>
+             </xml-properties>
+        </java-type>
+
+        <java-type name="Profiles">
+            <xml-properties>
+                <xml-property name="description" value="Collection of profiles"/>
+            </xml-properties>
+            <xml-root-element name="profiles"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="profile" name="profile" type="inventory.aai.onap.org.v21.Profile"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Profile">
+            <xml-root-element name="profile"/>
+            <java-attributes>
+                <xml-element java-attribute="profileName" name="profile-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the profile"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileType" name="profile-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of profile (ex,network-power-profile)"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileCharacteristics" name="profile-characteristics" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Set of characteristics of the profile."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileSubtype" name="profile-subtype" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Descriptive subtype."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileRole" name="profile-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="used to categorize this object in conjunction with profile-type and profile-function."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileFunction" name="profile-function" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="used to categorize this object in conjunction with profile-type and profile-role. The most specific category"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="profileSelflink" name="profile-selflink" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to endpoint where AAI can get more details"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+                               <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v21.Metadata"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an profiles"/>
+                <xml-property name="indexedProps" value="profile-name,profile-role,profile-function"/>
+                <xml-property name="uniqueProps" value="profile-name"/>
+                               <xml-property name="nameProps" value="profile-type"/>
+                <xml-property name="container" value="profiles"/>
+                <xml-property name="namespace" value="common"/>
+                <xml-property name="uriTemplate" value="/common/profiles/profile/{profile-name}"/>
+                <xml-property name="requiredProps" value="profile-name,profile-type,characteristics"/>
+             </xml-properties>
+        </java-type>
+
+
                <java-type name="Contacts">
             <xml-properties>
                 <xml-property name="description" value="Collection of contacts"/>
             <xml-property name="requiredProps" value="contact-name"/>
             </xml-properties>
                </java-type>
-        <java-type name="Profiles">
+
+        <java-type name="PortList">
+            <xml-root-element name="port-list"/>
+            <java-attributes>
+                <xml-element java-attribute="port" name="port" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Port number"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="assignment" name="assignment" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name or assignment for the port"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type or usage of the port"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operator" name="operator" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operator to apply to the port (greater than, less than, etc)."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
             <xml-properties>
-                <xml-property name="description" value="Collection of profiles"/>
+                <xml-property name="description" value="Port List Range"/>
+                <xml-property name="dependentOn" value="endpoint,rule,object-group"/>
+                <xml-property name="uriTemplate" value="/port-list/{port}"/>
+                <xml-property name="requiredProps" value="port"/>
             </xml-properties>
-            <xml-root-element name="profiles"/>
+        </java-type>
+
+        <java-type name="SelectorList">
+            <xml-root-element name="selector-list"/>
             <java-attributes>
-                <xml-element container-type="java.util.ArrayList" java-attribute="profile" name="profile" type="inventory.aai.onap.org.v21.Profile"/>
+                <xml-element java-attribute="selector" name="selector" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Selector"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="assignment" name="assignment" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name or assignment for the selector"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type or usage of the selector"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
             </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Selectors list"/>
+                <xml-property name="dependentOn" value="rule,object-group,endpoint,policy"/>
+                <xml-property name="uriTemplate" value="/selector-list/{selector}"/>
+                <xml-property name="requiredProps" value="selector"/>
+             </xml-properties>
         </java-type>
 
-        <java-type name="Profile">
-            <xml-root-element name="profile"/>
+        <java-type name="Policies">
+            <xml-root-element name="policies"/>
             <java-attributes>
-                <xml-element java-attribute="profileName" name="profile-name" required="true" type="java.lang.String" xml-key="true">
+                <xml-element container-type="java.util.ArrayList" java-attribute="policy" name="policy" type="inventory.aai.onap.org.v21.Policy"/>
+            </java-attributes>
+            <xml-properties>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Policy">
+            <xml-root-element name="policy"/>
+            <java-attributes>
+                <xml-element java-attribute="policyId" name="policy-id" required="true" type="java.lang.String" xml-key="true">
                     <xml-properties>
-                        <xml-property name="description" value="Name of the profile"/>
+                        <xml-property name="description" value="Unique Policy UUID."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="profileType" name="profile-type" type="java.lang.String">
+                <xml-element java-attribute="policyName" name="policy-name" type="java.lang.String">
                     <xml-properties>
-                        <xml-property name="description" value="Type of profile (ex,network-power-profile)"/>
+                        <xml-property name="description" value="Policy Name"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="profileCharacteristics" name="profile-characteristics" type="java.lang.String">
+                <xml-element java-attribute="policyType" name="policy-type" type="java.lang.String">
                     <xml-properties>
-                        <xml-property name="description" value="Set of characteristics of the profile."/>
+                        <xml-property name="description" value="Policy Type"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="profileSubtype" name="profile-subtype" type="java.lang.String">
+                <xml-element java-attribute="policyRole" name="policy-role" type="java.lang.String">
                     <xml-properties>
-                        <xml-property name="description" value="Descriptive subtype."/>
+                        <xml-property name="description" value="Policy role"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="profileSelflink" name="profile-selflink" required="true" type="java.lang.String">
+                <xml-element java-attribute="policyFunction" name="policy-function" type="java.lang.String">
                     <xml-properties>
-                        <xml-property name="description" value="URL to endpoint where AAI can get more details"/>
+                        <xml-property name="description" value="policy function"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="doNotTrack" name="do-not-track" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                       <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Do not track"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="preDnat" name="pre-dnat" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                       <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Pre destination NAT"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="applyOnForward" name="apply-on-forward" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                       <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="apply on forward"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selector" name="selector" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Host and Interface Type Selector"/>
+                                               <xml-property name="dbAlias" value="selector-local"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="order" name="order" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Order"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="version" name="version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="status" name="status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="remoteAsn" name="remote-asn" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Remote ASN"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="namespace" name="namespace" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Namespace filter to apply the policy"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="policyDescription" name="policy-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description of the policy"/>
+                    </xml-properties>
+                </xml-element>
+                 <xml-element java-attribute="policyVariables" name="policy-variables" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Set of rule variables"/>
                     </xml-properties>
                 </xml-element>
                 <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
                         <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
                     </xml-properties>
                 </xml-element>
+                <xml-element java-attribute="rules" name="rules" type="inventory.aai.onap.org.v21.Rules"/>
+                <xml-element container-type="java.util.ArrayList" java-attribute="selectorList" name="selector-list" type="inventory.aai.onap.org.v21.SelectorList"/>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
             </java-attributes>
             <xml-properties>
-                <xml-property name="description" value="Profiles store the information (ex, credential-profile) and have a relationship to (ex, pnf)"/>
-                <xml-property name="uniqueProps" value="profile-name"/>
-                <xml-property name="container" value="profiles"/>
+                <xml-property name="description" value="Definition of policy"/>
+                <xml-property name="indexedProps" value="policy-id"/>
+                <xml-property name="uniqueProps" value="policy-id"/>
+                <xml-property name="container" value="policies"/>
                 <xml-property name="namespace" value="common"/>
-                <xml-property name="nameProps" value="profile-name,profile-type"/>
-                <xml-property name="uriTemplate" value="/common/profiles/profile/{profile-name}"/>
-                <xml-property name="requiredProps" value="profile-name"/>
+                <xml-property name="uriTemplate" value="/common/policies/policy/{policy-id}"/>
+                <xml-property name="requiredProps" value="policy-id,do-not-track,pre-dnat,apply-on-forward"/>
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="Rules">
+            <xml-properties>
+                <xml-property name="description" value="Collection of rules"/>
+            </xml-properties>
+            <xml-root-element name="rules"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="rule" name="rule" type="inventory.aai.onap.org.v21.Rule"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Rule">
+            <xml-root-element name="rule"/>
+            <java-attributes>
+                <xml-element java-attribute="ruleId" name="rule-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="direction" name="direction" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ingress or egress"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Positive protocol match. tcp, udp, icmpv6, sctp, udplite, integer 1-255."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="notProtocol" name="not-protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Negative protocol match. tcp, udp, icmpv6, sctp, udplite, integer 1-255."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="action" name="action" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Action to perform when matching this rule."/>
+                    </xml-properties>
+                </xml-element>
+                                <xml-element container-type="java.util.ArrayList" java-attribute="icmp" name="icmp" type="java.lang.String">
+                                <xml-properties>
+                        <xml-property name="description" value=""/>
+                    </xml-properties>
+                </xml-element>
+                                <xml-element container-type="java.util.ArrayList" java-attribute="notIcmp" name="not-icmp" type="java.lang.String">
+                                <xml-properties>
+                        <xml-property name="description" value=""/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sequence" name="sequence" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Sequence number of the rule."/>
+                    </xml-properties>
+                </xml-element>
+                               <xml-element java-attribute="threshold" name="threshold" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Threshold"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="status" name="status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="status"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="version" name="version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="countVariable" name="count-variable" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Named variable used for counting transactions."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="log" name="log" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                       <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Boolean to indicate whether or not logging is required."/>
+                    </xml-properties>
+                </xml-element>
+                               <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="portList" name="port-list" type="inventory.aai.onap.org.v21.PortList"/>
+                <xml-element container-type="java.util.ArrayList" java-attribute="selectorList" name="selector-list" type="inventory.aai.onap.org.v21.SelectorList"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an rules"/>
+                <xml-property name="container" value="rules"/>
+                <xml-property name="dependentOn" value="policy"/>
+                <xml-property name="uriTemplate" value="/rules/rule/{rule-id}"/>
+                <xml-property name="requiredProps" value="rule-id,log"/>
             </xml-properties>
         </java-type>
 
+        <java-type name="VlanCharacteristics">
+            <xml-properties>
+                <xml-property name="description" value="Collection of vlan characteristics"/>
+            </xml-properties>
+            <xml-root-element name="vlan-characteristics"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlanCharacteristic" name="vlan-characteristic" type="inventory.aai.onap.org.v21.VlanCharacteristic"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VlanCharacteristic">
+            <xml-root-element name="vlan-characteristic"/>
+            <java-attributes>
+                <xml-element java-attribute="vlanCharacteristicId" name="vlan-characteristic-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rootName" name="root-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="appliesTo" name="applies-to" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Device role the vlan-characteristic applies to (c-agg-leaf-a, c-agg-leaf-b, r-leaf)."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="dhcpPool" name="dhcp-pool" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                                               <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="DHCP Agent access."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="internetAccess" name="internet-access" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Boolean to represent if requires internet access."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an vlan characteristic"/>
+                <xml-property name="indexedProps" value="vlan-characteristic-id"/>
+                <xml-property name="container" value="vlan-characteristics"/>
+                <xml-property name="namespace" value="common"/>
+                <xml-property name="uriTemplate" value="/common/vlan-characteristics/vlan-characteristic/{vlan-characteristic-id}"/>
+               <xml-property name="requiredProps" value="vlan-characteristic-id,dhcp-pool,internet-access"/>
+             </xml-properties>
+        </java-type>
+
+        <java-type name="RelationshipRules">
+            <xml-properties>
+                <xml-property name="description" value="Collection of relationship rules"/>
+            </xml-properties>
+            <xml-root-element name="relationship-rules"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationshipRule" name="relationship-rule" type="inventory.aai.onap.org.v21.RelationshipRule"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelationshipRule">
+            <xml-root-element name="relationship-rule"/>
+            <java-attributes>
+                <xml-element java-attribute="ruleId" name="rule-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="context" name="context" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Example global,site"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ruleTraversals" name="rule-traversals" required="true" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of traversals"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="appliesTo" name="applies-to" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Node the related object applies to"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipComponents" name="relationship-components" type="inventory.aai.onap.org.v21.RelationshipComponents"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an relationship rule"/>
+                <xml-property name="indexedProps" value="rule-id,context,rule-traversals,applies-to"/>
+                 <xml-property name="uniqueProps" value="rule-id"/>
+                <xml-property name="container" value="relationship-rules"/>
+                <xml-property name="namespace" value="common"/>
+                <xml-property name="uriTemplate" value="/common/relationship-rules/relationship-rule/{rule-id}"/>
+               <xml-property name="requiredProps" value="rule-id,context,rule-traversals,applies-to"/>
+             </xml-properties>
+        </java-type>
+
+               <java-type name="RelationshipComponents">
+            <xml-properties>
+                <xml-property name="description" value="Collection of relationship components"/>
+            </xml-properties>
+            <xml-root-element name="relationship-components"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationshipComponent" name="relationship-component" type="inventory.aai.onap.org.v21.RelationshipComponent"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelationshipComponent">
+            <xml-root-element name="relationship-component"/>
+            <java-attributes>
+                <xml-element java-attribute="ruleNode" name="rule-node" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="NARAD object"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ruleProperty" name="rule-property" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Object property"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ruleValue" name="rule-value" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Property value"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="componentOrder" name="component-order" required="true" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Order in traversal"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v21.RelationshipList"/>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an relationship component"/>
+                <xml-property name="indexedProps" value="rule-node,rule-property,rule-value,component-order"/>
+                <xml-property name="container" value="relationship-components"/>
+                <xml-property name="dependentOn" value="relationship-rule"/>
+                <xml-property name="uriTemplate" value="common/relationship-components/relationship-component/{rule-node}"/>
+                <xml-property name="requiredProps" value="rule-node,rule-property,rule-value,component-order"/>
+             </xml-properties>
+        </java-type>
+
+
         <java-type name="AggregateRoutes">
             <xml-properties>
                 <xml-property name="description" value="Collection of aggregate routes."/>
             <java-attributes>
                 <xml-element java-attribute="aggRouteId" name="agg-route-id" required="true" type="java.lang.String" xml-key="true">
                     <xml-properties>
-                        <xml-property name="description" value="Unique id of the aggregate-route instance"/>
+                        <xml-property name="description" value="Route UUID."/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="networkStartAddress" name="network-start-address" required="true" type="java.lang.String">
+                <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="Name of the forwarding-path"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="cidrMask" name="cidr-mask" required="true" type="java.lang.String">
+                <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="CIDR-mask for aggregate route subnet"/>
                     </xml-properties>
                 </xml-element>
-                <xml-element java-attribute="ipVersion" name="ip-version" required="true" type="java.lang.String">
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
                     <xml-properties>
                         <xml-property name="description" value="Identifies is aggregate route is ipv4 or ipv6"/>
                     </xml-properties>
                 <xml-property name="description" value="Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&amp;AI. "/>
                 <xml-property name="uniqueProps" value="agg-route-id"/>
                 <xml-property name="container" value="aggregate-routes"/>
-                <xml-property name="dependentOn" value="l3-network"/>
+                <xml-property name="dependentOn" value="vrf,l3-network"/>
                 <xml-property name="uriTemplate" value="/aggregate-routes/aggregate-route/{agg-route-id}"/>
-            <xml-property name="requiredProps" value="agg-route-id,network-start-address,cidr-mask,ip-version"/>
+            <xml-property name="requiredProps" value="agg-route-id"/>
             </xml-properties>
                </java-type>
                <java-type name="CommunicationServiceProfiles">