Apply multiplicity Rule upon Edge creation 65/55465/1
authormichaere <michaere@amdocs.com>
Wed, 27 Jun 2018 08:51:34 +0000 (09:51 +0100)
committermichaere <michaere@amdocs.com>
Wed, 27 Jun 2018 08:51:34 +0000 (09:51 +0100)
Uses multiplicity type from dbedge rules json to validate whether to and
from vertices meet the multiplicity constraint e.g. ONE2MANY.

This validation is applied when creating or updating an edge.

Issue-ID: AAI-1197

Change-Id: Id6e78635c5cbea66d8a35e6901b7e1b673125e4e
Signed-off-by: michaere <michaere@amdocs.com>
36 files changed:
src/main/java/org/onap/crud/dao/champ/ChampDao.java
src/main/java/org/onap/crud/entity/Vertex.java
src/main/java/org/onap/crud/event/response/GraphEventResponseHandler.java
src/main/java/org/onap/crud/parser/BulkPayload.java [moved from src/main/java/org/onap/crud/service/BulkPayload.java with 98% similarity]
src/main/java/org/onap/crud/parser/CrudResponseBuilder.java
src/main/java/org/onap/crud/parser/EdgePayload.java [moved from src/main/java/org/onap/crud/service/EdgePayload.java with 98% similarity]
src/main/java/org/onap/crud/parser/VertexPayload.java [moved from src/main/java/org/onap/crud/service/VertexPayload.java with 98% similarity]
src/main/java/org/onap/crud/parser/util/EdgePayloadUtil.java [new file with mode: 0644]
src/main/java/org/onap/crud/service/AaiResourceService.java
src/main/java/org/onap/crud/service/AbstractGraphDataService.java
src/main/java/org/onap/crud/service/CrudAsyncGraphDataService.java
src/main/java/org/onap/crud/service/CrudGraphDataService.java
src/main/java/org/onap/crud/service/CrudRestService.java
src/main/java/org/onap/crud/util/CrudServiceUtil.java
src/main/java/org/onap/schema/EdgeRulesLoader.java
src/main/java/org/onap/schema/RelationshipSchema.java
src/main/java/org/onap/schema/validation/MultiplicityValidator.java [new file with mode: 0644]
src/main/java/org/onap/schema/validation/OxmModelValidator.java [moved from src/main/java/org/onap/schema/OxmModelValidator.java with 99% similarity]
src/main/java/org/onap/schema/validation/RelationshipSchemaValidator.java [moved from src/main/java/org/onap/schema/RelationshipSchemaValidator.java with 54% similarity]
src/test/java/org/onap/crud/parser/util/EdgePayloadUtilTest.java [new file with mode: 0644]
src/test/java/org/onap/crud/service/AaiResourceServiceTest.java
src/test/java/org/onap/crud/service/BulkPayloadTest.java
src/test/java/org/onap/crud/service/CrudRestServiceTest.java
src/test/java/org/onap/crud/util/CrudServiceUtilTest.java
src/test/java/org/onap/schema/RelationshipSchemaTest.java
src/test/java/org/onap/schema/validation/MultiplicityValidatorTest.java [new file with mode: 0644]
src/test/resources/edgeProps/edge_properties_v10.json [moved from src/test/resources/model/edge_properties_v10.json with 100% similarity]
src/test/resources/edgeProps/edge_properties_v8.json [moved from src/test/resources/model/edge_properties_v8.json with 100% similarity]
src/test/resources/edgeProps/edge_properties_v9.json [moved from src/test/resources/model/edge_properties_v9.json with 100% similarity]
src/test/resources/model/edge_properties_v11.json [deleted file]
src/test/resources/oxm/aai_oxm_v10.xml [new file with mode: 0644]
src/test/resources/oxm/aai_oxm_v8.xml [new file with mode: 0644]
src/test/resources/oxm/aai_oxm_v9.xml [new file with mode: 0644]
src/test/resources/rules/DbEdgeRules_v10.json [moved from src/test/resources/model/DbEdgeRules_v10.json with 99% similarity]
src/test/resources/rules/DbEdgeRules_v8.json [moved from src/test/resources/model/DbEdgeRules_v8.json with 99% similarity]
src/test/resources/rules/DbEdgeRules_v9.json [moved from src/test/resources/model/DbEdgeRules_v9.json with 99% similarity]

index 65d1d99..7bd4754 100644 (file)
@@ -173,7 +173,7 @@ public class ChampDao implements GraphDao {
 
   @Override
   public OperationResult getVertices(String type, Map<String, Object> filter, HashSet<String> properties, String version) throws CrudException {
-    filter.put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+    filter.put(org.onap.schema.validation.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
 
     List<NameValuePair> queryParams = convertToNameValuePair(filter);
     queryParams.addAll(convertToNameValuePair("properties", properties));
@@ -242,7 +242,7 @@ public class ChampDao implements GraphDao {
 
     // Add the aai_node_type so that AAI can read the data created by gizmo
     // TODO: This probably shouldn't be here
-    properties.put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+    properties.put(org.onap.schema.validation.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
 
     Vertex.Builder insertVertexBuilder = new Vertex.Builder(type);
     properties.forEach(insertVertexBuilder::property);
@@ -266,7 +266,7 @@ public class ChampDao implements GraphDao {
 
     // Add the aai_node_type so that AAI can read the data created by gizmo
     // TODO: This probably shouldn't be here
-    properties.put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+    properties.put(org.onap.schema.validation.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
 
     Vertex.Builder insertVertexBuilder = new Vertex.Builder(type);
     insertVertexBuilder.id(id);
@@ -414,7 +414,7 @@ public class ChampDao implements GraphDao {
 
     // Add the aai_node_type so that AAI can read the data created by gizmo
     // TODO: This probably shouldn't be here
-    properties.put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+    properties.put(org.onap.schema.validation.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
 
     Vertex.Builder insertVertexBuilder = new Vertex.Builder(type);
     properties.forEach(insertVertexBuilder::property);
@@ -463,7 +463,7 @@ public class ChampDao implements GraphDao {
 
     // Add the aai_node_type so that AAI can read the data created by gizmo
     // TODO: This probably shouldn't be here
-    properties.put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+    properties.put(org.onap.schema.validation.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
 
     Vertex.Builder insertVertexBuilder = new Vertex.Builder(type);
     insertVertexBuilder.id(id);
index cffdcf1..fd03827 100644 (file)
@@ -34,7 +34,7 @@ import org.json.JSONObject;
 import org.onap.crud.exception.CrudException;
 import org.onap.crud.util.CrudServiceUtil;
 import org.onap.schema.OxmModelLoader;
-import org.onap.schema.OxmModelValidator;
+import org.onap.schema.validation.OxmModelValidator;
 import com.google.common.base.CaseFormat;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
index 8146aa3..d858384 100644 (file)
@@ -29,8 +29,8 @@ import org.onap.crud.event.envelope.GraphEventEnvelope;
 import org.onap.crud.exception.CrudException;
 import org.onap.crud.logging.CrudServiceMsgs;
 import org.onap.crud.parser.CrudResponseBuilder;
-import org.onap.schema.OxmModelValidator;
-import org.onap.schema.RelationshipSchemaValidator;
+import org.onap.schema.validation.OxmModelValidator;
+import org.onap.schema.validation.RelationshipSchemaValidator;
 
 /**
  * Reads event responses, logs and generates exceptions if errors are found.
@@ -18,7 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
-package org.onap.crud.service;
+package org.onap.crud.parser;
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
index 0a81884..29d8824 100644 (file)
@@ -27,11 +27,7 @@ import java.util.Map;
 import org.onap.crud.entity.Edge;
 import org.onap.crud.entity.Vertex;
 import org.onap.crud.exception.CrudException;
-import org.onap.crud.service.BulkPayload;
-import org.onap.crud.service.EdgePayload;
-import org.onap.crud.service.VertexPayload;
 import org.onap.schema.EdgeRulesLoader;
-
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonArray;
@@ -18,7 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
-package org.onap.crud.service;
+package org.onap.crud.parser;
 
 import javax.ws.rs.core.Response.Status;
 import org.onap.crud.exception.CrudException;
@@ -18,7 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
-package org.onap.crud.service;
+package org.onap.crud.parser;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/src/main/java/org/onap/crud/parser/util/EdgePayloadUtil.java b/src/main/java/org/onap/crud/parser/util/EdgePayloadUtil.java
new file mode 100644 (file)
index 0000000..0f72625
--- /dev/null
@@ -0,0 +1,145 @@
+/**\r
+ * ï»¿============LICENSE_START=======================================================\r
+ * org.onap.aai\r
+ * ================================================================================\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright Â© 2017-2018 Amdocs\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *       http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+package org.onap.crud.parser.util;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+import java.util.regex.Matcher;\r
+import java.util.regex.Pattern;\r
+import javax.ws.rs.core.Response.Status;\r
+import org.onap.crud.entity.Edge;\r
+import org.onap.crud.entity.Vertex;\r
+import org.onap.crud.exception.CrudException;\r
+\r
+/**\r
+ * Utility Class to extract data from the Edge Payload\r
+ */\r
+public class EdgePayloadUtil {\r
+\r
+    private static final Pattern URL_MATCHER = Pattern.compile("services/inventory/(.*)/(.*)/(.*)");\r
+\r
+    private static Matcher getVertexMatcher(String vertex) throws CrudException {\r
+        Matcher matcher = URL_MATCHER.matcher(vertex);\r
+        if (!matcher.matches()) {\r
+            throw new CrudException("Invalid Source/Target Urls", Status.BAD_REQUEST);\r
+        }\r
+        return matcher;\r
+    }\r
+\r
+    /**\r
+     * Returns the node type from a vertex on the edge payload\r
+     *\r
+     * @param vertex\r
+     * @return\r
+     * @throws CrudException\r
+     */\r
+    public static String getVertexNodeType(String vertex) throws CrudException {\r
+        return getVertexMatcher(vertex).group(2);\r
+    }\r
+\r
+    /**\r
+     * Returns the node id from a vertex on the edge payload\r
+     *\r
+     * @param vertex\r
+     * @return\r
+     * @throws CrudException\r
+     */\r
+    public static String getVertexNodeId(String vertex) throws CrudException {\r
+        return getVertexMatcher(vertex).group(3);\r
+    }\r
+\r
+    /**\r
+     * Generates a key based on the edge payload content\r
+     *\r
+     * @param source\r
+     * @param target\r
+     * @param type\r
+     * @return\r
+     * @throws CrudException\r
+     */\r
+    public static String generateEdgeKey(String source, String target, String type) throws CrudException {\r
+        return getVertexNodeType(source) + ":" + getVertexNodeType(target) + ":" + type;\r
+    }\r
+\r
+    /**\r
+     * Returns an Edge Builder object from the payload properties\r
+     *\r
+     * @param source\r
+     * @param target\r
+     * @param type\r
+     * @return\r
+     * @throws CrudException\r
+     */\r
+    public static Edge.Builder getBuilderFromEdgePayload(String source, String target, String type) throws CrudException {\r
+        Edge.Builder edgeBuilder = new Edge.Builder(type);\r
+\r
+        edgeBuilder.source(new Vertex.Builder(getVertexNodeType(source)).id(getVertexNodeId(source)).build());\r
+        edgeBuilder.target(new Vertex.Builder(getVertexNodeType(target)).id(getVertexNodeId(target)).build());\r
+\r
+        return edgeBuilder;\r
+    }\r
+\r
+    /**\r
+     * Returns an Edge Builder object from an Edge object properties\r
+     *\r
+     * @param edge\r
+     * @return\r
+     */\r
+    public static Edge.Builder getBuilderFromEdge(Edge edge) {\r
+        Edge.Builder edgeBuilder = new Edge.Builder(edge.getType()).id(edge.getId().get());\r
+\r
+        edgeBuilder\r
+                .source(new Vertex.Builder(edge.getSource().getType()).id(edge.getSource().getId().get()).build());\r
+        edgeBuilder\r
+                .target(new Vertex.Builder(edge.getTarget().getType()).id(edge.getTarget().getId().get()).build());\r
+\r
+        return edgeBuilder;\r
+    }\r
+\r
+    /**\r
+     * Filter Edges by its source/target vertex type and the edge type\r
+     *\r
+     * @param sourceTargetType the new Edge source/target type\r
+     * @param type\r
+     * @param edges\r
+     * @return List<Edge>\r
+     */\r
+    public static List<Edge> filterEdgesByRelatedVertexAndType(String sourceTargetType, String type, List<Edge> edges) {\r
+        List<Edge> filteredEdges = new ArrayList<>();\r
+        if (edges != null) {\r
+            for (Edge edge : edges) {\r
+                if (doesEdgeTypeMatch(edge, type) && doesEdgeSourceTargetTypeMatch(edge, sourceTargetType)) {\r
+                    filteredEdges.add(edge);\r
+                }\r
+            }\r
+        }\r
+        return filteredEdges;\r
+    }\r
+\r
+    private static boolean doesEdgeTypeMatch(Edge edge, String type) {\r
+        return edge.getType() != null && edge.getType().equals(type);\r
+    }\r
+\r
+    private static boolean doesEdgeSourceTargetTypeMatch(Edge edge, String sourceTargetType) {\r
+        return (edge.getSource().getType() != null && edge.getSource().getType().equals(sourceTargetType))\r
+                || ((edge.getTarget().getType() != null && edge.getTarget().getType().equals(sourceTargetType)));\r
+    }\r
+}\r
index afabe7e..c0375b4 100644 (file)
@@ -54,10 +54,11 @@ import org.onap.aaiauth.auth.Auth;
 import org.onap.crud.exception.CrudException;\r
 import org.onap.crud.logging.CrudServiceMsgs;\r
 import org.onap.crud.logging.LoggingUtil;\r
+import org.onap.crud.parser.EdgePayload;\r
+import org.onap.crud.parser.util.EdgePayloadUtil;\r
 import org.onap.crud.service.CrudRestService.Action;\r
 import org.onap.crud.util.CrudServiceConstants;\r
 import org.onap.schema.EdgeRulesLoader;\r
-import org.onap.schema.RelationshipSchemaValidator;\r
 import org.slf4j.MDC;\r
 import com.google.gson.Gson;\r
 import com.google.gson.JsonElement;\r
@@ -397,16 +398,15 @@ public class AaiResourceService {
   public EdgePayload applyEdgeRulesToPayload(EdgePayload payload) throws CrudException {\r
 \r
     // Extract the types for both the source and target vertices.\r
-    String srcType = RelationshipSchemaValidator.vertexTypeFromUri(payload.getSource());\r
-    String tgtType = RelationshipSchemaValidator.vertexTypeFromUri(payload.getTarget());\r
+    String srcType = EdgePayloadUtil.getVertexNodeType(payload.getSource());\r
+    String tgtType = EdgePayloadUtil.getVertexNodeType(payload.getTarget());\r
 \r
-      // Now, get the default properties for this edge based on the edge rules definition...\r
-      Map<EdgeProperty, String> props = getEdgeRuleProperties(srcType, tgtType);\r
-\r
-      // ...and merge them with any custom properties provided in the request.\r
-      JsonElement mergedProperties = mergeProperties(payload.getProperties(), props);\r
-      payload.setProperties(mergedProperties);\r
+    // Now, get the default properties for this edge based on the edge rules definition...\r
+    Map<EdgeProperty, String> props = getEdgeRuleProperties(srcType, tgtType);\r
 \r
+    // ...and merge them with any custom properties provided in the request.\r
+    JsonElement mergedProperties = mergeProperties(payload.getProperties(), props);\r
+    payload.setProperties(mergedProperties);\r
 \r
     if(logger.isDebugEnabled()) {\r
       logger.debug("Edge properties after applying rules for '" + srcType + " -> " + tgtType + "': " + mergedProperties);\r
@@ -430,6 +430,7 @@ public class AaiResourceService {
    *\r
    * @throws CrudException\r
    */\r
+  @SuppressWarnings("unchecked")\r
   public JsonElement mergeProperties(JsonElement propertiesFromRequest, Map<EdgeProperty, String> propertyDefaults) throws CrudException {\r
 \r
     // Convert the properties from the edge payload into something we can\r
index 7c1168e..fed12fd 100644 (file)
@@ -36,10 +36,14 @@ import org.onap.crud.dao.champ.ChampVertexSerializer;
 import org.onap.crud.entity.Edge;
 import org.onap.crud.entity.Vertex;
 import org.onap.crud.exception.CrudException;
+import org.onap.crud.parser.BulkPayload;
 import org.onap.crud.parser.CrudResponseBuilder;
+import org.onap.crud.parser.EdgePayload;
+import org.onap.crud.parser.VertexPayload;
+import org.onap.crud.parser.util.EdgePayloadUtil;
 import org.onap.crud.util.CrudServiceUtil;
-import org.onap.schema.OxmModelValidator;
-import org.onap.schema.RelationshipSchemaValidator;
+import org.onap.schema.validation.OxmModelValidator;
+import org.onap.schema.validation.RelationshipSchemaValidator;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonElement;
@@ -228,12 +232,31 @@ public abstract class AbstractGraphDataService {
               edgePayload
                   .setTarget("services/inventory/" + version + "/" + target.getType() + "/" + target.getId().get());
             }
-            validatedEdge = RelationshipSchemaValidator.validateIncomingAddPayload(version, edgePayload.getType(),
-                edgePayload);
+
+            List<Edge> sourceVertexEdges =
+                    EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(edgePayload.getSource()), edgePayload.getType(),
+                                 daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(edgePayload.getSource()), null));
+
+            List<Edge> targetVertexEdges =
+                     EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(edgePayload.getTarget()), edgePayload.getType(),
+                                 daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(edgePayload.getTarget()), null));
+
+            validatedEdge = RelationshipSchemaValidator.validateIncomingAddPayload(version, edgePayload.getType(), edgePayload, sourceVertexEdges,
+                    targetVertexEdges);
             persistedEdge = addBulkEdge(validatedEdge, version, txId);
           } else if (opr.getValue().getAsString().equalsIgnoreCase("modify")) {
             Edge edge = dao.getEdge(edgePayload.getId(), edgePayload.getType(), txId);
-            validatedEdge = RelationshipSchemaValidator.validateIncomingUpdatePayload(edge, version, edgePayload);
+
+            // load source and target vertex relationships for validation
+            List<Edge> sourceVertexEdges =
+                   EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(edgePayload.getSource()), edgePayload.getType(),
+                                daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(edgePayload.getSource()), null));
+
+            List<Edge> targetVertexEdges =
+                    EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(edgePayload.getTarget()), edgePayload.getType(),
+                                daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(edgePayload.getTarget()), null));
+
+            validatedEdge = RelationshipSchemaValidator.validateIncomingUpdatePayload(edge, version, edgePayload, edgePayload.getType(), sourceVertexEdges, targetVertexEdges);
             persistedEdge = updateBulkEdge(validatedEdge, version, txId);
           } else {
             if ( (edgePayload.getId() == null) || (edgePayload.getType() == null) ) {
index 6b447a1..c2d2591 100644 (file)
@@ -56,11 +56,13 @@ import org.onap.crud.event.envelope.GraphEventEnvelope;
 import org.onap.crud.event.response.GraphEventResponseHandler;
 import org.onap.crud.exception.CrudException;
 import org.onap.crud.logging.CrudServiceMsgs;
+import org.onap.crud.parser.EdgePayload;
+import org.onap.crud.parser.VertexPayload;
 import org.onap.crud.util.CrudProperties;
 import org.onap.crud.util.CrudServiceConstants;
 import org.onap.crud.util.etag.EtagGenerator;
-import org.onap.schema.OxmModelValidator;
-import org.onap.schema.RelationshipSchemaValidator;
+import org.onap.schema.validation.OxmModelValidator;
+import org.onap.schema.validation.RelationshipSchemaValidator;
 
 public class CrudAsyncGraphDataService extends AbstractGraphDataService {
 
@@ -211,7 +213,7 @@ public class CrudAsyncGraphDataService extends AbstractGraphDataService {
             throws CrudException {
         // Validate the incoming payload
         Vertex vertex = OxmModelValidator.validateIncomingUpsertPayload(null, version, type, payload.getProperties());
-        vertex.getProperties().put(org.onap.schema.OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
+        vertex.getProperties().put(OxmModelValidator.Metadata.NODE_TYPE.propertyName(), type);
         // Create graph request event
         GraphEvent event = GraphEvent.builder(GraphEventOperation.CREATE)
                 .vertex(GraphEventVertex.fromVertex(vertex, version)).build();
@@ -233,6 +235,7 @@ public class CrudAsyncGraphDataService extends AbstractGraphDataService {
     public ImmutablePair<EntityTag, String> addEdge(String version, String type, EdgePayload payload)
             throws CrudException {
         Edge edge = RelationshipSchemaValidator.validateIncomingAddPayload(version, type, payload);
+
         // Create graph request event
         GraphEvent event =
                 GraphEvent.builder(GraphEventOperation.CREATE).edge(GraphEventEdge.fromEdge(edge, version)).build();
@@ -320,6 +323,7 @@ public class CrudAsyncGraphDataService extends AbstractGraphDataService {
         OperationResult operationResult = dao.getEdge(id, type, new HashMap<String, String>());
         Edge edge = Edge.fromJson(operationResult.getResult());
         Edge validatedEdge = RelationshipSchemaValidator.validateIncomingUpdatePayload(edge, version, payload);
+
         GraphEvent event = GraphEvent.builder(GraphEventOperation.UPDATE)
                 .edge(GraphEventEdge.fromEdge(validatedEdge, version)).build();
 
index 5b1c2dd..2888ace 100644 (file)
@@ -22,6 +22,7 @@ package org.onap.crud.service;
 
 
 import java.util.HashMap;
+import java.util.List;
 import javax.ws.rs.core.EntityTag;
 import org.apache.commons.lang3.tuple.ImmutablePair;
 import org.onap.aai.restclient.client.OperationResult;
@@ -30,9 +31,12 @@ import org.onap.crud.entity.Edge;
 import org.onap.crud.entity.Vertex;
 import org.onap.crud.exception.CrudException;
 import org.onap.crud.parser.CrudResponseBuilder;
+import org.onap.crud.parser.EdgePayload;
+import org.onap.crud.parser.VertexPayload;
+import org.onap.crud.parser.util.EdgePayloadUtil;
 import org.onap.crud.util.CrudServiceUtil;
-import org.onap.schema.OxmModelValidator;
-import org.onap.schema.RelationshipSchemaValidator;
+import org.onap.schema.validation.OxmModelValidator;
+import org.onap.schema.validation.RelationshipSchemaValidator;
 
 
 public class CrudGraphDataService extends AbstractGraphDataService {
@@ -70,7 +74,17 @@ public class CrudGraphDataService extends AbstractGraphDataService {
   @Override
   public ImmutablePair<EntityTag, String> addEdge(String version, String type, EdgePayload payload)
             throws CrudException {
-    Edge edge = RelationshipSchemaValidator.validateIncomingAddPayload(version, type, payload);
+    // load source and target vertex relationships for validation
+    List<Edge> sourceVertexEdges =
+             EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(payload.getSource()), type,
+                          daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(payload.getSource()), null));
+
+    List<Edge> targetVertexEdges =
+              EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(payload.getTarget()), type,
+                          daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(payload.getTarget()), null));
+
+    Edge edge = RelationshipSchemaValidator.validateIncomingAddPayload(version, type, payload, sourceVertexEdges, targetVertexEdges);
+
     return addEdge(version, edge);
   }
 
@@ -133,7 +147,20 @@ public class CrudGraphDataService extends AbstractGraphDataService {
   @Override
   public ImmutablePair<EntityTag, String> updateEdge(String version, String id, String type, EdgePayload payload)
             throws CrudException {
-    Edge validatedEdge = getValidatedEdge(version, id, type, payload);
+    OperationResult edgeResult = dao.getEdge(id, type, new HashMap<String, String>());
+    Edge edge = Edge.fromJson(edgeResult.getResult());
+
+    // load source and target vertex relationships for validation
+    List<Edge> sourceVertexEdges =
+             EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(payload.getSource()), type,
+                          daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(payload.getSource()), null));
+
+    List<Edge> targetVertexEdges =
+              EdgePayloadUtil.filterEdgesByRelatedVertexAndType(EdgePayloadUtil.getVertexNodeType(payload.getTarget()), type,
+                          daoForGet.getVertexEdges(EdgePayloadUtil.getVertexNodeId(payload.getTarget()), null));
+
+    Edge validatedEdge = RelationshipSchemaValidator.validateIncomingUpdatePayload(edge, version, payload, type, sourceVertexEdges, targetVertexEdges);
+
     return updateEdge(version, validatedEdge);
   }
 
@@ -152,11 +179,6 @@ public class CrudGraphDataService extends AbstractGraphDataService {
       .buildUpsertEdgeResponse(RelationshipSchemaValidator.validateOutgoingPayload(version, updatedEdge), version);
   }
 
-  private Edge getValidatedEdge(String version, String id, String type, EdgePayload payload) throws CrudException {
-      OperationResult operationResult = dao.getEdge(id, type, new HashMap<String, String>());
-    return RelationshipSchemaValidator.validateIncomingUpdatePayload(Edge.fromJson(operationResult.getResult()), version, payload);
-  }
-
   @Override
   public ImmutablePair<EntityTag, String> patchEdge(String version, String id, String type, EdgePayload payload)
             throws CrudException {
index 583fee6..a43d7e5 100644 (file)
@@ -52,6 +52,9 @@ import org.onap.aaiauth.auth.Auth;
 import org.onap.crud.exception.CrudException;
 import org.onap.crud.logging.CrudServiceMsgs;
 import org.onap.crud.logging.LoggingUtil;
+import org.onap.crud.parser.BulkPayload;
+import org.onap.crud.parser.EdgePayload;
+import org.onap.crud.parser.VertexPayload;
 import org.onap.crud.util.CrudProperties;
 import org.onap.crud.util.CrudServiceConstants;
 import org.onap.crud.util.CrudServiceUtil;
index 6b5cdcd..ed5fe53 100644 (file)
@@ -31,9 +31,8 @@ import javax.ws.rs.core.MultivaluedMap;
 import javax.ws.rs.core.Response.Status;
 import org.onap.aai.db.props.AAIProperties;
 import org.onap.crud.exception.CrudException;
-import org.onap.schema.OxmModelLoader;
 import org.onap.schema.EdgeRulesLoader;
-
+import org.onap.schema.OxmModelLoader;
 import com.google.gson.Gson;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonPrimitive;
index a990ae5..7f08949 100644 (file)
  */\r
 package org.onap.schema;\r
 \r
-import com.google.common.collect.Multimap;\r
+import java.io.File;\r
+import java.io.FileInputStream;\r
+import java.io.FileNotFoundException;\r
+import java.io.IOException;\r
+import java.util.Arrays;\r
+import java.util.Map;\r
+import java.util.concurrent.ConcurrentHashMap;\r
+import java.util.function.Function;\r
+import java.util.regex.Matcher;\r
+import java.util.regex.Pattern;\r
+import java.util.stream.Collectors;\r
+import javax.ws.rs.core.Response.Status;\r
 import org.apache.commons.io.IOUtils;\r
 import org.onap.aai.cl.eelf.LoggerFactory;\r
+import org.onap.aai.edges.EdgeIngestor;\r
 import org.onap.aai.edges.EdgeRule;\r
 import org.onap.aai.edges.exceptions.EdgeRuleNotFoundException;\r
-import org.onap.aai.edges.EdgeIngestor;\r
 import org.onap.aai.setup.ConfigTranslator;\r
 import org.onap.aai.setup.SchemaLocationsBean;\r
 import org.onap.aai.setup.Version;\r
 import org.onap.crud.exception.CrudException;\r
 import org.onap.crud.logging.CrudServiceMsgs;\r
 import org.onap.schema.util.SchemaIngestPropertyReader;\r
-import org.springframework.core.io.UrlResource;\r
-\r
-import javax.ws.rs.core.Response.Status;\r
-import java.io.*;\r
-import java.util.Arrays;\r
-import java.util.Map;\r
-import java.util.concurrent.ConcurrentHashMap;\r
-import java.util.function.Function;\r
-import java.util.regex.Matcher;\r
-import java.util.regex.Pattern;\r
-import java.util.stream.Collectors;\r
+import com.google.common.collect.Multimap;\r
 \r
 public class EdgeRulesLoader {\r
 \r
index fc91662..2aab7a9 100644 (file)
  */
 package org.onap.schema;
 
-import com.google.common.collect.Multimap;
-import org.codehaus.jackson.map.ObjectMapper;
-import org.onap.aai.edges.EdgeRule;
-import org.onap.crud.exception.CrudException;
 
 import java.io.IOException;
-import java.util.*;
+import java.util.HashMap;
+import java.util.Map;
 import java.util.stream.Collectors;
 import javax.ws.rs.core.Response.Status;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.onap.aai.edges.EdgeRule;
+import org.onap.crud.exception.CrudException;
+import com.google.common.collect.Multimap;
 
 
 public class RelationshipSchema {
 
+  public static final String SCHEMA_SOURCE_NODE_TYPE = "from";
+  public static final String SCHEMA_TARGET_NODE_TYPE = "to";
   public static final String SCHEMA_RELATIONSHIP_TYPE = "label";
-
+  public static final String SCHEMA_MULTIPLICITY_TYPE = "multiplicity";
+  public static final String SCHEMA_RULES_ARRAY = "rules";
 
   private Map<String, Map<String, Class<?>>> relations = new HashMap<>();
   /**
@@ -42,8 +46,18 @@ public class RelationshipSchema {
    */
   private Map<String, Map<String, Class<?>>> relationTypes  = new HashMap<>();
 
-  public RelationshipSchema( Multimap<String, EdgeRule> rules, String props) throws CrudException, IOException {
+  private Map<String, EdgeRule> relationshipRules = new HashMap<>();
+
+  @SuppressWarnings("unchecked")
+  public RelationshipSchema(Multimap<String, EdgeRule> rules, String props) throws CrudException, IOException {
     HashMap<String, String> properties = new ObjectMapper().readValue(props, HashMap.class);
+
+    // hold the true values of the edge rules by key - convert to java 8
+    for (EdgeRule rule : rules.values()) {
+      String key = buildRelation(rule.getFrom(), rule.getTo(), rule.getLabel());
+      relationshipRules.put(key, rule);
+    }
+
     Map<String, Class<?>> edgeProps = properties.entrySet().stream().collect(Collectors.toMap(p -> p.getKey(), p -> {
       try {
         return resolveClass(p.getValue());
@@ -63,6 +77,27 @@ public class RelationshipSchema {
     return this.relations.get(key);
   }
 
+  /**
+   * Extract the multiplicity type from the Edge rules
+   *
+   * @param key
+   * @return
+   * @throws CrudException
+   */
+  public String lookupRelationMultiplicity(String key) throws CrudException {
+    EdgeRule edgeRule = relationshipRules.get(key);
+
+    if (edgeRule == null) {
+      throw new CrudException("Invalid source/target/relationship type: " + key, Status.BAD_REQUEST);
+    }
+
+    if (edgeRule.getMultiplicityRule() != null) {
+      return edgeRule.getMultiplicityRule().toString();
+    }
+
+    return null;
+  }
+
   public Map<String, Class<?>> lookupRelationType(String type) {
     return this.relationTypes.get(type);
   }
@@ -72,7 +107,7 @@ public class RelationshipSchema {
   }
 
 
-  private String buildRelation(String source, String target, String relation){
+  private String buildRelation(String source, String target, String relation) {
     return source + ":" + target + ":" + relation;
   }
 
@@ -88,6 +123,4 @@ public class RelationshipSchema {
       throw new CrudException("", Status.BAD_REQUEST);
     }
   }
-}
-
-
+}
\ No newline at end of file
diff --git a/src/main/java/org/onap/schema/validation/MultiplicityValidator.java b/src/main/java/org/onap/schema/validation/MultiplicityValidator.java
new file mode 100644 (file)
index 0000000..1c1075c
--- /dev/null
@@ -0,0 +1,119 @@
+/**\r
+ * ï»¿============LICENSE_START=======================================================\r
+ * org.onap.aai\r
+ * ================================================================================\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright Â© 2017-2018 Amdocs\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *       http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+package org.onap.schema.validation;\r
+\r
+import java.util.List;\r
+import javax.ws.rs.core.Response.Status;\r
+import org.onap.crud.entity.Edge;\r
+import org.onap.crud.exception.CrudException;\r
+import org.onap.crud.parser.EdgePayload;\r
+import org.onap.crud.parser.util.EdgePayloadUtil;\r
+import org.onap.schema.EdgeRulesLoader;\r
+import org.onap.schema.RelationshipSchema;\r
+\r
+/**\r
+ * Validator to enforce multiplicity rules on the creation of a new Edge\r
+ *\r
+ */\r
+public class MultiplicityValidator {\r
+\r
+    public enum MultiplicityType {\r
+        MANY2ONE("Many2One"), MANY2MANY("Many2Many"), ONE2MANY("One2Many"), ONE2ONE("One2One");\r
+\r
+        private final String value;\r
+\r
+        MultiplicityType(String value) {\r
+            this.value = value;\r
+        }\r
+\r
+        public String getValue() {\r
+            return value;\r
+        }\r
+    }\r
+\r
+    /**\r
+     * Validates the Edge payload's source and target vertices against multiplicity rule\r
+     *\r
+     * @param payload\r
+     * @param edgesForSourceVertex\r
+     * @param edgesForTargetVertex\r
+     * @param type\r
+     * @param version\r
+     * @throws CrudException\r
+     */\r
+    public static void validatePayloadMultiplicity(EdgePayload payload, List<Edge> edgesForSourceVertex,\r
+            List<Edge> edgesForTargetVertex, String type, String version)\r
+            throws CrudException {\r
+        RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);\r
+        // find the validate the key from the schema\r
+        String key = EdgePayloadUtil.generateEdgeKey(payload.getSource(), payload.getTarget(), type);\r
+\r
+        // get the multiplicity rule for the relationships\r
+        String multiplicityTypeValue = schema.lookupRelationMultiplicity(key);\r
+        if (multiplicityTypeValue != null) {\r
+            MultiplicityType multiplicityType = MultiplicityType.valueOf(multiplicityTypeValue.toUpperCase());\r
+\r
+            boolean isVertexValidForMultiplicityType =\r
+                    isVertexValidForMultiplicityType(edgesForSourceVertex, edgesForTargetVertex, multiplicityType);\r
+\r
+            if (!isVertexValidForMultiplicityType) {\r
+                throw new CrudException(\r
+                        multiplicityType.toString() + " multiplicity rule broken for Edge:" + key,\r
+                        Status.BAD_REQUEST);\r
+            }\r
+        }\r
+    }\r
+\r
+    /**\r
+     * Compare vertex existing relationships to ensure its not in breach of multiplicity rules\r
+     *\r
+     * @param edgesForVertex\r
+     * @param multiplicityType\r
+     * @return\r
+     */\r
+    public static Boolean isVertexValidForMultiplicityType(List<Edge> edgesForSourceVertex,\r
+            List<Edge> edgesForTargetVertex,\r
+            MultiplicityType multiplicityType) {\r
+\r
+        switch (multiplicityType) {\r
+            case MANY2MANY:\r
+                return true;\r
+            case MANY2ONE:\r
+                if (edgesForSourceVertex != null && !edgesForSourceVertex.isEmpty()) {\r
+                    return false;\r
+                }\r
+                break;\r
+            case ONE2MANY:\r
+                if (edgesForTargetVertex != null && !edgesForTargetVertex.isEmpty()) {\r
+                    return false;\r
+                }\r
+                break;\r
+            case ONE2ONE:\r
+                if ((edgesForSourceVertex != null && !edgesForSourceVertex.isEmpty())\r
+                        || (edgesForTargetVertex != null && !edgesForTargetVertex.isEmpty())) {\r
+                    return false;\r
+                }\r
+                break;\r
+        }\r
+        return true;\r
+    }\r
+\r
+}
\ No newline at end of file
@@ -18,7 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
-package org.onap.schema;
+package org.onap.schema.validation;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -36,13 +36,14 @@ import org.onap.crud.exception.CrudException;
 import org.onap.crud.logging.CrudServiceMsgs;
 import org.onap.crud.util.CrudServiceConstants;
 import org.onap.crud.util.CrudServiceUtil;
+import org.onap.schema.OxmModelLoader;
 import com.google.common.base.CaseFormat;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonNull;
 
 public class OxmModelValidator {
   private static Logger logger = LoggerFactory.getInstance().getLogger(OxmModelValidator.class.getName());
-       
+
   public enum Metadata {
     NODE_TYPE("aai-node-type"),
     URI("aai-uri"),
@@ -162,7 +163,7 @@ public class OxmModelValidator {
 
   public static Vertex validateIncomingUpsertPayload(String id, String version, String type, JsonElement properties)
       throws CrudException {
-    
+
     try {
       type = resolveCollectionType(version, type);
       DynamicJAXBContext jaxbContext = OxmModelLoader.getContextForVersion(version);
@@ -319,7 +320,7 @@ public class OxmModelValidator {
     return null;
   }
 
-  public static Vertex validateOutgoingPayload(String version, Vertex vertex) { 
+  public static Vertex validateOutgoingPayload(String version, Vertex vertex) {
     Vertex.Builder modelVertexBuilder = new Vertex.Builder(vertex.getType()).id(vertex.getId().get());
 
     try {
@@ -340,7 +341,7 @@ public class OxmModelValidator {
           modelVertexBuilder.property(key, vertex.getProperties().get(key));
         }
       }
-      
+
       return modelVertexBuilder.build();
     } catch (Exception ex) {
       return vertex;
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
-package org.onap.schema;
-
-import com.google.gson.JsonElement;
-import com.google.gson.JsonNull;
+package org.onap.schema.validation;
 
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import javax.ws.rs.core.Response.Status;
 import org.onap.crud.entity.Edge;
 import org.onap.crud.entity.Vertex;
 import org.onap.crud.exception.CrudException;
-import org.onap.crud.service.EdgePayload;
+import org.onap.crud.parser.EdgePayload;
+import org.onap.crud.parser.util.EdgePayloadUtil;
 import org.onap.crud.util.CrudServiceUtil;
-import org.onap.schema.OxmModelValidator.Metadata;
+import org.onap.schema.EdgeRulesLoader;
+import org.onap.schema.RelationshipSchema;
+import org.onap.schema.validation.OxmModelValidator.Metadata;
 import org.radeox.util.logging.Logger;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import javax.ws.rs.core.Response.Status;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonNull;
 
 public class RelationshipSchemaValidator {
 
-  public static final String SOURCE_NODE = "source";
-  public static final String TARGET_NODE = "target";
-
-  final static Pattern urlPattern = Pattern.compile("services/inventory/(.*)/(.*)/(.*)");
-
-  public static Map<String, Object> resolveCollectionfilter(String version, String type,
-                                                            Map<String, String> filter)
-      throws CrudException {
+  private static final String SOURCE_LABEL = "Source";
+  private static final String TARGET_LABEL = "Target";
 
+  public static Map<String, Object> resolveCollectionfilter(String version, String type, Map<String, String> filter) throws CrudException {
     RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);
     if (schema == null) {
       throw new CrudException("", Status.NOT_FOUND);
@@ -64,19 +59,15 @@ public class RelationshipSchemaValidator {
           Object value = CrudServiceUtil.validateFieldType(filter.get(key), props.get(key));
           result.put(key, value);
         } catch (Exception ex) {
-          // Skip any exceptions thrown while validating the filter
-          // key value
+          // Skip any exceptions thrown while validating the filter key value
           continue;
         }
       }
     }
-
     return result;
-
   }
 
   public static void validateType(String version, String type) throws CrudException {
-
     RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);
     if (!schema.isValidType(type)) {
       throw new CrudException("Invalid " + RelationshipSchema.SCHEMA_RELATIONSHIP_TYPE
@@ -86,17 +77,16 @@ public class RelationshipSchemaValidator {
 
   }
 
-  public static Edge validateIncomingAddPayload(String version, String type, Vertex sourceNode,
-                                                Vertex targetNode, JsonElement properties)
-      throws CrudException {
-    EdgePayload payload = new EdgePayload();
-    payload.setSource("services/inventory/" + version + "/" + sourceNode.getType()
-        + "/" + sourceNode.getId().get());
-    payload.setTarget("services/inventory/" + version + "/" + targetNode.getType()
-        + "/" + targetNode.getId().get());
-    payload.setType(type);
-    payload.setProperties(properties);
-    return validateIncomingAddPayload(version, type, payload);
+  public static Edge validateIncomingAddPayload(String version, String type, EdgePayload payload,
+    List<Edge> sourceVertexEdges, List<Edge> targetVertexEdges) throws CrudException {
+
+    //perform standard validation
+    Edge edge = validateIncomingAddPayload(version, type, payload);
+
+    // validate payload using multiplicity edge rules
+    MultiplicityValidator.validatePayloadMultiplicity(payload, sourceVertexEdges, targetVertexEdges, type, version);
+
+    return edge;
   }
 
   public static Edge validateIncomingAddPayload(String version, String type, EdgePayload payload)
@@ -104,49 +94,28 @@ public class RelationshipSchemaValidator {
     RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);
 
     try {
-
       if (payload.getSource() == null || payload.getTarget() == null) {
         throw new CrudException("Source/Target not specified", Status.BAD_REQUEST);
       }
 
-      Matcher sourceMatcher = urlPattern.matcher(payload.getSource());
-      Matcher targetMatcher = urlPattern.matcher(payload.getTarget());
-
-      if (!sourceMatcher.matches() || !targetMatcher.matches()) {
-        throw new CrudException("Invalid Source/Target Urls", Status.BAD_REQUEST);
-      }
-
-      // create key based on source:target:relationshipType
-      String sourceNodeType = sourceMatcher.group(2);
-      String targetNodeType = targetMatcher.group(2);
-
-      String sourceNodeId = sourceMatcher.group(3);
-      String targetNodeId = targetMatcher.group(3);
-
-      String key = sourceNodeType + ":" + targetNodeType + ":" + type;
+      String key = EdgePayloadUtil.generateEdgeKey(payload.getSource(), payload.getTarget(), type);
 
       // find the validate the key from the schema
       Map<String, Class<?>> schemaObject = schema.lookupRelation(key);
 
       if (schemaObject == null) {
-        throw new CrudException("Invalid source/target/relationship type: " + key,
-            Status.BAD_REQUEST);
+        throw new CrudException("Invalid source/target/relationship type: " + key, Status.BAD_REQUEST);
       }
 
-      Edge.Builder modelEdgeBuilder = new Edge.Builder(type);
-
-      modelEdgeBuilder.source(new Vertex.Builder(sourceNodeType).id(sourceNodeId).build());
-      modelEdgeBuilder.target(new Vertex.Builder(targetNodeType).id(targetNodeId).build());
+      Edge.Builder modelEdgeBuilder = EdgePayloadUtil.getBuilderFromEdgePayload(payload.getSource(), payload.getTarget(), type);
 
       // validate it properties
       validateEdgeProps(modelEdgeBuilder, payload.getProperties(), schemaObject);
 
       return modelEdgeBuilder.build();
     } catch (Exception ex) {
-
       throw new CrudException(ex.getMessage(), Status.BAD_REQUEST);
     }
-
   }
 
   public static Edge validateIncomingPatchPayload(Edge edge, String version, EdgePayload payload)
@@ -154,42 +123,20 @@ public class RelationshipSchemaValidator {
     RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);
 
     try {
-      if (payload.getSource() != null) {
-        Matcher sourceMatcher = urlPattern.matcher(payload.getSource());
-
-        if (!sourceMatcher.matches()) {
-          throw new CrudException("Invalid Target Urls", Status.BAD_REQUEST);
-        }
-        String sourceNodeId = sourceMatcher.group(3);
-        if (!sourceNodeId.equals(edge.getSource().getId().get())) {
-          throw new CrudException("Source can't be updated", Status.BAD_REQUEST);
-        }
-      }
-
-      if (payload.getTarget() != null) {
-        Matcher targetMatcher = urlPattern.matcher(payload.getTarget());
+      validateEdgeVertexMatchesPayload(edge.getSource(), payload.getSource(), SOURCE_LABEL);
+      validateEdgeVertexMatchesPayload(edge.getTarget(), payload.getTarget(), TARGET_LABEL);
 
-        if (!targetMatcher.matches()) {
-          throw new CrudException("Invalid Target Urls", Status.BAD_REQUEST);
-        }
-        String sourceNodeId = targetMatcher.group(3);
-        if (!sourceNodeId.equals(edge.getTarget().getId().get())) {
-          throw new CrudException("Target can't be updated", Status.BAD_REQUEST);
-        }
-      }
-      
       // Remove the timestamp properties from the existing edge, as these should be managed by Champ.
       Map<String,Object> existingProps = edge.getProperties();
-      
+
       if (existingProps.containsKey(Metadata.CREATED_TS.propertyName())) {
         existingProps.remove(Metadata.CREATED_TS.propertyName());
       }
       if (existingProps.containsKey(Metadata.UPDATED_TS.propertyName())) {
         existingProps.remove(Metadata.UPDATED_TS.propertyName());
       }
-      
-      // create key based on source:target:relationshipType
 
+      // create key based on source:target:relationshipType
       String key = edge.getSource().getType() + ":" + edge.getTarget().getType()
           + ":" + edge.getType();
 
@@ -202,43 +149,40 @@ public class RelationshipSchemaValidator {
         return edge;
       }
 
-      Set<Map.Entry<String, JsonElement>> entries = payload.getProperties()
-          .getAsJsonObject().entrySet();
+      validateEdgePropertiesFromPayload(edge, payload, schemaObject);
 
-      for (Map.Entry<String, JsonElement> entry : entries) {
+      return edge;
+    } catch (Exception ex) {
+      throw new CrudException(ex.getMessage(), Status.BAD_REQUEST);
+    }
+  }
 
-        if (!schemaObject.containsKey(entry.getKey())) {
-          throw new CrudException("Invalid property: " + entry.getKey(), Status.BAD_REQUEST);
-        } else if (entry.getValue() instanceof JsonNull && edge.getProperties()
-            .containsKey(entry.getKey())) {
-          edge.getProperties().remove(entry.getKey());
-        } else if (!(entry.getValue() instanceof JsonNull)) {
-          Object value = CrudServiceUtil.validateFieldType(entry.getValue().getAsString(),
-              schemaObject.get(entry.getKey()));
-          edge.getProperties().put(entry.getKey(), value);
-        }
+  private static void validateEdgePropertiesFromPayload(Edge edge, EdgePayload payload, Map<String, Class<?>> schemaObject) throws CrudException {
+    Set<Map.Entry<String, JsonElement>> entries = payload.getProperties().getAsJsonObject().entrySet();
+    for (Map.Entry<String, JsonElement> entry : entries) {
 
+      if (!schemaObject.containsKey(entry.getKey())) {
+        throw new CrudException("Invalid property: " + entry.getKey(), Status.BAD_REQUEST);
+      } else if (entry.getValue() instanceof JsonNull && edge.getProperties().containsKey(entry.getKey())) {
+        edge.getProperties().remove(entry.getKey());
+      } else if (!(entry.getValue() instanceof JsonNull)) {
+        Object value = CrudServiceUtil.validateFieldType(entry.getValue().getAsString(), schemaObject.get(entry.getKey()));
+        edge.getProperties().put(entry.getKey(), value);
       }
+    }
+  }
 
-      return edge;
 
-    } catch (Exception ex) {
+  public static Edge validateIncomingUpdatePayload(Edge edge, String version, EdgePayload payload, String type,
+            List<Edge> sourceVertexEdges, List<Edge> targetVertexEdges) throws CrudException {
 
-      throw new CrudException(ex.getMessage(), Status.BAD_REQUEST);
-    }
-  }
+    //perform standard validation
+    Edge validatedEdge = validateIncomingUpdatePayload(edge, version, payload);
 
-  public static Edge validateIncomingUpdatePayload(Edge edge, String version, Vertex sourceNode,
-                                                   Vertex targetNode, JsonElement properties)
-      throws CrudException {
-    EdgePayload payload = new EdgePayload();
-    payload.setSource("services/inventory/" + version + "/" + sourceNode.getType()
-        + "/" + sourceNode.getId().get());
-    payload.setTarget("services/inventory/" + version + "/" + targetNode.getType()
-        + "/" + targetNode.getId().get());
-    payload.setType(edge.getType());
-    payload.setProperties(properties);
-    return validateIncomingUpdatePayload(edge, version, payload);
+    // validate payload using multiplicity edge rules
+    MultiplicityValidator.validatePayloadMultiplicity(payload, sourceVertexEdges, targetVertexEdges, type, version);
+
+    return validatedEdge;
   }
 
   public static Edge validateIncomingUpdatePayload(Edge edge, String version, EdgePayload payload)
@@ -246,32 +190,10 @@ public class RelationshipSchemaValidator {
     RelationshipSchema schema = EdgeRulesLoader.getSchemaForVersion(version);
 
     try {
+      validateEdgeVertexMatchesPayload(edge.getSource(), payload.getSource(), SOURCE_LABEL);
+      validateEdgeVertexMatchesPayload(edge.getTarget(), payload.getTarget(), TARGET_LABEL);
 
-      if (payload.getSource() != null) {
-        Matcher sourceMatcher = urlPattern.matcher(payload.getSource());
-
-        if (!sourceMatcher.matches()) {
-          throw new CrudException("Invalid Target Urls", Status.BAD_REQUEST);
-        }
-        String sourceNodeId = sourceMatcher.group(3);
-        if (!sourceNodeId.equals(edge.getSource().getId().get())) {
-          throw new CrudException("Source can't be updated", Status.BAD_REQUEST);
-        }
-      }
-
-      if (payload.getTarget() != null) {
-        Matcher targetMatcher = urlPattern.matcher(payload.getTarget());
-
-        if (!targetMatcher.matches()) {
-          throw new CrudException("Invalid Target Urls", Status.BAD_REQUEST);
-        }
-        String sourceNodeId = targetMatcher.group(3);
-        if (!sourceNodeId.equals(edge.getTarget().getId().get())) {
-          throw new CrudException("Target can't be updated", Status.BAD_REQUEST);
-        }
-      }
       // create key based on source:target:relationshipType
-
       String key = edge.getSource().getType() + ":" + edge.getTarget().getType()
           + ":" + edge.getType();
 
@@ -284,32 +206,29 @@ public class RelationshipSchemaValidator {
         return edge;
       }
 
-      Edge.Builder updatedEdgeBuilder = new Edge.Builder(edge.getType()).id(edge.getId().get());
-
-      updatedEdgeBuilder
-          .source(new Vertex.Builder(edge.getSource().getType()).id(edge.getSource().getId()
-              .get()).build());
-      updatedEdgeBuilder
-          .target(new Vertex.Builder(edge.getTarget().getType()).id(edge.getTarget().getId()
-              .get()).build());
+      Edge.Builder updatedEdgeBuilder = EdgePayloadUtil.getBuilderFromEdge(edge);
 
       validateEdgeProps(updatedEdgeBuilder, payload.getProperties(), schemaObject);
 
       return updatedEdgeBuilder.build();
     } catch (Exception ex) {
-
       throw new CrudException(ex.getMessage(), Status.BAD_REQUEST);
     }
   }
 
+  private static void validateEdgeVertexMatchesPayload(Vertex edgeVertex, String payloadVertex, String vertexTypeLabel) throws CrudException {
+    if (payloadVertex != null) {
+      String sourceNodeId = EdgePayloadUtil.getVertexNodeId(payloadVertex);
+      if (!sourceNodeId.equals(edgeVertex.getId().get())) {
+        throw new CrudException(vertexTypeLabel + " can't be updated", Status.BAD_REQUEST);
+      }
+    }
+  }
 
-  private static void validateEdgeProps(Edge.Builder builder, JsonElement props,
-                                        Map<String, Class<?>> schemaObject)
-      throws CrudException {
+  private static void validateEdgeProps(Edge.Builder builder, JsonElement props, Map<String, Class<?>> schemaObject) throws CrudException {
     Set<Map.Entry<String, JsonElement>> entries = props.getAsJsonObject().entrySet();
 
     for (Map.Entry<String, JsonElement> entry : entries) {
-
       if (!schemaObject.containsKey(entry.getKey())) {
         throw new CrudException("Invalid property: " + entry.getKey(), Status.BAD_REQUEST);
       } else {
@@ -317,13 +236,10 @@ public class RelationshipSchemaValidator {
             schemaObject.get(entry.getKey()));
         builder.property(entry.getKey(), value);
       }
-
     }
-
   }
 
   public static Edge validateOutgoingPayload(String version, Edge edge) throws CrudException {
-
     Edge.Builder modelEdgeBuilder = new Edge.Builder(edge.getType()).id(edge.getId()
         .get()).source(edge.getSource())
         .target(edge.getTarget());
@@ -346,16 +262,4 @@ public class RelationshipSchemaValidator {
     }
     return modelEdgeBuilder.build();
   }
-
-    
-  public static String vertexTypeFromUri(String uri) throws CrudException {
-      
-    Matcher matcher = urlPattern.matcher(uri);
-
-    if (!matcher.matches()) {
-      throw new CrudException("Invalid Source/Target Urls", Status.BAD_REQUEST);
-    }
-
-    return matcher.group(2);
-  }
 }
diff --git a/src/test/java/org/onap/crud/parser/util/EdgePayloadUtilTest.java b/src/test/java/org/onap/crud/parser/util/EdgePayloadUtilTest.java
new file mode 100644 (file)
index 0000000..f5baae8
--- /dev/null
@@ -0,0 +1,110 @@
+/**\r
+ * ï»¿============LICENSE_START=======================================================\r
+ * org.onap.aai\r
+ * ================================================================================\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright Â© 2017-2018 Amdocs\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *       http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+package org.onap.crud.parser.util;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+import org.junit.Assert;\r
+import org.junit.Test;\r
+import org.onap.crud.entity.Edge;\r
+import org.onap.crud.entity.Vertex;\r
+import org.onap.crud.exception.CrudException;\r
+\r
+public class EdgePayloadUtilTest {\r
+\r
+    @Test\r
+    public void testGetVertexNodeType() throws CrudException {\r
+        Assert.assertEquals("vserver", EdgePayloadUtil\r
+                .getVertexNodeType("services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811"));\r
+    }\r
+\r
+    @Test\r
+    public void testGetVertexNodeId() throws CrudException {\r
+        Assert.assertEquals("50bdab41-ad1c-4d00-952c-a0aa5d827811",\r
+                EdgePayloadUtil.getVertexNodeId("services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811"));\r
+    }\r
+\r
+    @Test\r
+    public void testGenerateEdgeKey() throws CrudException {\r
+        Assert.assertEquals("vserver:pserver:tosca.relationships.HostedOn",\r
+                EdgePayloadUtil.generateEdgeKey("services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811",\r
+                        "services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908",\r
+                        "tosca.relationships.HostedOn"));\r
+    }\r
+\r
+    @Test\r
+    public void testKeyGenerationEnforcesSourceAndTargetOrder() throws Exception {\r
+        String generateEdgeKey1 = EdgePayloadUtil.generateEdgeKey(\r
+                "services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811",\r
+                "services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908", "tosca.relationships.HostedOn");\r
+\r
+        String generateEdgeKey2 = EdgePayloadUtil.generateEdgeKey(\r
+                "services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908",\r
+                "services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811", "tosca.relationships.HostedOn");\r
+\r
+        Assert.assertNotEquals(generateEdgeKey1, generateEdgeKey2);\r
+    }\r
+\r
+\r
+    @Test\r
+    public void testGetBuilderFromEdgePayload() throws CrudException {\r
+        Edge.Builder builder = EdgePayloadUtil.getBuilderFromEdgePayload(\r
+                "services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811",\r
+                "services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908", "tosca.relationships.HostedOn");\r
+\r
+        Edge edge = builder.build();\r
+        Assert.assertEquals("tosca.relationships.HostedOn", edge.getType());\r
+        Assert.assertEquals("vserver", edge.getSource().getType());\r
+        Assert.assertEquals("50bdab41-ad1c-4d00-952c-a0aa5d827811", edge.getSource().getId().get());\r
+        Assert.assertEquals("pserver", edge.getTarget().getType());\r
+        Assert.assertEquals("1d326bc7-b985-492b-9604-0d5d1f06f908", edge.getTarget().getId().get());\r
+    }\r
+\r
+    @Test\r
+    public void tesGetBuilderFromEdge() throws CrudException {\r
+        Edge edge = createEdge("vserver", "pserver");\r
+\r
+        Assert.assertNotNull(edge);\r
+        Assert.assertNotNull(EdgePayloadUtil.getBuilderFromEdge(edge));\r
+    }\r
+\r
+    @Test\r
+    public void testFilterEdgesByRelatedVertexAndType() throws CrudException {\r
+        List<Edge> edges = new ArrayList<>();\r
+        edges.add(createEdge("vserver", "pserver"));\r
+        edges.add(createEdge("vce", "pserver"));\r
+        edges.add(createEdge("snapshot", "pserver"));\r
+        edges.add(createEdge("vserver", "pserver"));\r
+\r
+        List<Edge> filteredEdges =\r
+                EdgePayloadUtil.filterEdgesByRelatedVertexAndType("vserver", "tosca.relationships.HostedOn", edges);\r
+\r
+        Assert.assertNotNull(filteredEdges);\r
+        Assert.assertEquals(2, filteredEdges.size());\r
+    }\r
+\r
+    private Edge createEdge(String sourceVertexType, String targetVertexType) {\r
+        return new Edge.Builder("tosca.relationships.HostedOn").id("test")\r
+                .source(new Vertex.Builder(sourceVertexType).id("50bdab41-ad1c-4d00-952c-a0aa5d827811").build())\r
+                .target(new Vertex.Builder(targetVertexType).id("1d326bc7-b985-492b-9604-0d5d1f06f908").build())\r
+                .build();\r
+    }\r
+}\r
index 5eb8a68..c23f3ac 100644 (file)
@@ -33,8 +33,7 @@ import org.onap.aai.serialization.db.EdgeRule;
 import org.onap.aai.serialization.db.EdgeRules;\r
 import org.onap.aai.serialization.db.EdgeType;\r
 import org.onap.crud.exception.CrudException;\r
-import org.onap.crud.service.EdgePayload;\r
-\r
+import org.onap.crud.parser.EdgePayload;\r
 import com.google.gson.JsonElement;\r
 \r
 public class AaiResourceServiceTest {\r
index 89c2269..c768339 100644 (file)
@@ -25,7 +25,7 @@ import com.google.gson.JsonElement;
 import com.google.gson.JsonObject;
 
 import org.junit.Test;
-
+import org.onap.crud.parser.BulkPayload;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
index 68c876c..ddf3847 100644 (file)
@@ -36,7 +36,6 @@ import org.junit.Test;
 import org.junit.rules.ExpectedException;
 import org.mockito.Mockito;
 import org.onap.crud.exception.CrudException;
-import org.onap.crud.service.TestDao;
 import org.onap.crud.service.util.TestHeaders;
 import org.onap.crud.service.util.TestRequest;
 import org.onap.crud.service.util.TestUriInfo;
@@ -50,36 +49,36 @@ public class CrudRestServiceTest {
       "\"properties\": {" +
       "\"fqdn\": \"myhost.onap.com\"," +
       "\"hostname\": \"myhost\" } }";
-  
+
   private final String postVertexPayload = "{" +
       "\"type\": \"pserver\"," +
       "\"properties\": {" +
       "\"fqdn\": \"myhost.onap.com\"," +
       "\"hostname\": \"myhost\" } }";
-  
+
   private final String postMissingPropVertexPayload = "{" +
       "\"type\": \"pserver\"," +
       "\"properties\": {" +
       "\"fqdn\": \"myhost.onap.com\"," +
       "\"equip-type\": \"box\" } }";
+
   private final String postEdgePayload = "{" +
       "\"type\": \"tosca.relationships.HostedOn\"," +
-      "\"source\": \"services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811\"," +
-      "\"target\": \"services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908\"," +
+      "\"source\": \"services/inventory/v11/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811\"," +
+            "\"target\": \"services/inventory/v11/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908\"," +
       "\"properties\": {" +
       "\"prevent-delete\": \"NONE\" } }";
 
-  
+
   private CrudRestService mockService;
-  
+
   @Rule
   public ExpectedException thrown = ExpectedException.none();
 
   @Before
   public void init() throws Exception {
     ClassLoader classLoader = getClass().getClassLoader();
-    File dir = new File(classLoader.getResource("model").getFile());
+    File dir = new File(classLoader.getResource("rules").getFile());
     System.setProperty("CONFIG_HOME", dir.getParent());
     EdgeRulesLoader.resetSchemaVersionContext();
 
@@ -91,150 +90,170 @@ public class CrudRestServiceTest {
         Mockito.anyString(), Mockito.anyString(), Mockito.any(CrudRestService.Action.class), Mockito.anyString(),
         Mockito.any(HttpHeaders.class));
   }
-  
+
   @Test
   public void testDelete() throws CrudException {
     Response response;
-    
-    response = mockService.deleteVertex("", "v11", "pserver", "872dd5df-0be9-4167-95e9-2cf4b21165ed", 
+
+    response = mockService.deleteVertex("", "v11", "pserver", "872dd5df-0be9-4167-95e9-2cf4b21165ed",
         "services/inventory/v11", new TestHeaders(), null, new TestRequest());
     assertTrue(response.getStatus() == 200);
-    
-        response = mockService.deleteEdge("", "v11", "tosca.relationships.HostedOn",
-                "872dd5df-0be9-4167-95e9-2cf4b21165ed",
+
+    response = mockService.deleteEdge("", "v11", "tosca.relationships.HostedOn", "872dd5df-0be9-4167-95e9-2cf4b21165ed",
         "services/inventory/v11", new TestHeaders(), null, new TestRequest());
     assertTrue(response.getStatus() == 200);
   }
-  
+
   @Test
   public void testAddVertex() throws CrudException {
     Response response;
-    
+
        // Cannot find OXM version
-    response = mockService.addVertex(postVertexPayload, "v8", "services/inventory/v8",
+    response = mockService.addVertex(postVertexPayload, "v7", "services/inventory/v8",
             new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 500);
     Assert.assertNull(response.getEntityTag());
-       
-    response = mockService.addVertex(postMissingPropVertexPayload, "v11", "services/inventory/v11", 
+
+    response = mockService.addVertex(postMissingPropVertexPayload, "v11", "services/inventory/v11",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 400);
        Assert.assertNull(response.getEntityTag());
-    
-    response = mockService.addVertex(postVertexPayload, "v11", "services/inventory/v11", 
+
+    response = mockService.addVertex(postVertexPayload, "v11", "services/inventory/v11",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 201);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
-    
-    response = mockService.addVertex(postMissingPropVertexPayload, "v11", "pserver", "services/inventory/v11", 
+
+    response = mockService.addVertex(postMissingPropVertexPayload, "v11", "pserver", "services/inventory/v11",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 400);
        Assert.assertNull(response.getEntityTag());
-    
-    response = mockService.addVertex(postVertexPayload, "v11", "pserver", "services/inventory/v11", 
+
+    response = mockService.addVertex(postVertexPayload, "v11", "pserver", "services/inventory/v11",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 201);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
   }
-  
+
   @Test
   public void testAddEdge() throws CrudException {
     Response response;
-    
-    response = mockService.addEdge(postEdgePayload, "v11", "services/inventory/v11", 
+
+    response = mockService.addEdge(postEdgePayload, "v9", "services/inventory/v9",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 201);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
-    
-    response = mockService.addEdge(postEdgePayload, "v11", "tosca.relationships.HostedOn", "services/inventory/v11", 
+
+    response = mockService.addEdge(postEdgePayload, "v9", "tosca.relationships.HostedOn", "services/inventory/v11",
         new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 201);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
   }
-  
+
+  @Test
+  public void testAddEdgeMultiplicityRules() throws CrudException {
+    Response response;
+
+    response = mockService.addEdge(postEdgePayload, "v10", "services/inventory/v10",
+        new TestHeaders(), null, new TestRequest());
+    Assert.assertEquals("MANY2ONE multiplicity rule broken for Edge:vserver:pserver:tosca.relationships.HostedOn",
+            response.getEntity().toString());
+    Assert.assertEquals(400, response.getStatus());
+
+    response = mockService.addEdge(postEdgePayload, "v9", "tosca.relationships.HostedOn", "services/inventory/v9",
+        new TestHeaders(), null, new TestRequest());
+    Assert.assertEquals(201, response.getStatus());
+
+    response = mockService.addEdge(postEdgePayload, "v8", "tosca.relationships.HostedOn", "services/inventory/v8",
+        new TestHeaders(), null, new TestRequest());
+    Assert.assertEquals("ONE2MANY multiplicity rule broken for Edge:vserver:pserver:tosca.relationships.HostedOn",
+            response.getEntity().toString());
+    Assert.assertEquals(400, response.getStatus());
+  }
+
   @Test
   public void testUpdateVertex() throws CrudException {
     Response response;
 
        // Cannot find OXM version
-    response = mockService.updateVertex(putVertexPayload, "v8", "pserver", "test-uuid", "services/inventory/v8",
+    response = mockService.updateVertex(putVertexPayload, "v7", "pserver", "test-uuid", "services/inventory/v8",
             new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 500);
     Assert.assertNull(response.getEntityTag());
-       
+
     // Test ID mismatch
-    response = mockService.updateVertex(putVertexPayload, "v11", "pserver", "bad-id", 
+    response = mockService.updateVertex(putVertexPayload, "v11", "pserver", "bad-id",
         "services/inventory/v11", new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 400);
-    Assert.assertNull(response.getEntityTag());        
-    
+    Assert.assertNull(response.getEntityTag());
+
     // Success case
     response = mockService.updateVertex(putVertexPayload, "v11", "pserver", "test-uuid", "services/inventory/v11",
                 new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
-    assertTrue(response.getStatus() == 200);  
+    assertTrue(response.getStatus() == 200);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
-    
+
     // Patch
-    response = mockService.patchVertex(putVertexPayload, "v11", "pserver", "test-uuid", 
+    response = mockService.patchVertex(putVertexPayload, "v11", "pserver", "test-uuid",
         "services/inventory/v11", new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
-    assertTrue(response.getStatus() == 200);  
+    assertTrue(response.getStatus() == 200);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
   }
-  
+
   @Test
   public void testUpdateEdge() throws CrudException {
     Response response;
-    
-    response = mockService.updateEdge(postEdgePayload, "v11", "tosca.relationships.HostedOn", "my-uuid", 
-        "services/inventory/v11", new TestHeaders(), null, new TestRequest());
+
+    response = mockService.updateEdge(postEdgePayload, "v9", "tosca.relationships.HostedOn", "my-uuid",
+        "services/inventory/v9", new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
-    assertTrue(response.getStatus() == 200);  
+    assertTrue(response.getStatus() == 200);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
-    
+
     // Patch
-    response = mockService.patchEdge(postEdgePayload, "v11", "tosca.relationships.HostedOn", "my-uuid", 
-        "services/inventory/v11", new TestHeaders(), null, new TestRequest());
+    response = mockService.patchEdge(postEdgePayload, "v9", "tosca.relationships.HostedOn", "my-uuid",
+        "services/inventory/v9", new TestHeaders(), null, new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 200);
        Assert.assertEquals(response.getEntityTag().getValue(), "test123");
   }
-  
+
   @Test
   public void testGet() throws CrudException {
     Response response;
-    
-    response = mockService.getVertex("", "v11", "pserver", "872dd5df-0be9-4167-95e9-2cf4b21165ed", 
+
+    response = mockService.getVertex("", "v11", "pserver", "872dd5df-0be9-4167-95e9-2cf4b21165ed",
         "services/inventory/v11", new TestHeaders(), new TestUriInfo(), new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 200);
-    
-    response = mockService.getEdge("", "v11", "tosca.relationships.HostedOn", "872dd5df-0be9-4167-95e9-2cf4b21165ed", 
+
+    response = mockService.getEdge("", "v11", "tosca.relationships.HostedOn", "872dd5df-0be9-4167-95e9-2cf4b21165ed",
         "services/inventory/v11", new TestHeaders(), new TestUriInfo(), new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 200);
-    
-    response = mockService.getVertices("", "v11", "pserver", 
+
+    response = mockService.getVertices("", "v11", "pserver",
         "services/inventory/v11", new TestHeaders(), new TestUriInfo(), new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 200);
-    
-    response = mockService.getEdges("", "v11", "tosca.relationships.HostedOn",  
+
+    response = mockService.getEdges("", "v11", "tosca.relationships.HostedOn",
         "services/inventory/v11", new TestHeaders(), new TestUriInfo(), new TestRequest());
     System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
     assertTrue(response.getStatus() == 200);
   }
-  
+
   @Test
   public void testValidRequestHeader() throws CrudException {
     TestHeaders testHeaders = new TestHeaders();
@@ -270,7 +289,7 @@ public class CrudRestServiceTest {
     testHeaders.clearRequestHeader("X-TransactionId", "X-FromAppId");
     mockService.validateRequestHeader(testHeaders);
   }
-  
+
   @Test
   public void testEmptyRequestHeader() throws CrudException {
     thrown.expect(CrudException.class);
@@ -306,21 +325,21 @@ public class CrudRestServiceTest {
         System.out.println("Response: " + response.getStatus() + "\n" + response.getEntity().toString());
         assertTrue(response.getStatus() == 200);
     }
-  
+
   @Test
   public void testBulk() throws CrudException, IOException {
     Response response;
-    
+
     File bulkFile = new File("src/test/resources/payloads/bulk.json");
-    String payloadStr = readFileToString(bulkFile); 
+    String payloadStr = readFileToString(bulkFile);
     System.out.println(payloadStr);
-    
-    response = mockService.addBulk(payloadStr, "v11", "", 
-        "services/inventory/v11", new TestHeaders(), null, new TestRequest());
+
+    response = mockService.addBulk(payloadStr, "v9", "",
+        "services/inventory/v9", new TestHeaders(), null, new TestRequest());
     System.out.println("Bulk Response: " + response.getStatus() + "\n" + response.getEntity().toString());
-    assertTrue(response.getStatus() == 200);  
+    assertTrue(response.getStatus() == 200);
   }
-  
+
   public static String readFileToString(File aFile) throws IOException {
 
     BufferedReader br = new BufferedReader(new FileReader(aFile));
index 872586e..37cdeec 100644 (file)
@@ -22,7 +22,7 @@ package org.onap.crud.util;
 
 import org.junit.Assert;
 import org.junit.Test;
-import org.onap.crud.service.VertexPayload;
+import org.onap.crud.parser.VertexPayload;
 import org.onap.crud.service.util.TestHeaders;
 import com.google.gson.JsonElement;
 
index 9467f41..a32762f 100644 (file)
  */
 package org.onap.schema;
 
-import com.google.common.collect.ArrayListMultimap;
-import com.google.common.collect.Multimap;
+import static org.junit.Assert.*;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
 import org.junit.Test;
 import org.onap.aai.edges.EdgeRule;
 import org.onap.aai.edges.exceptions.EdgeRuleNotFoundException;
 import org.onap.crud.exception.CrudException;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
-
-import static org.junit.Assert.*;
+import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Multimap;
 
 public class RelationshipSchemaTest {
 
diff --git a/src/test/java/org/onap/schema/validation/MultiplicityValidatorTest.java b/src/test/java/org/onap/schema/validation/MultiplicityValidatorTest.java
new file mode 100644 (file)
index 0000000..409ce3c
--- /dev/null
@@ -0,0 +1,159 @@
+/**\r
+ * ï»¿============LICENSE_START=======================================================\r
+ * org.onap.aai\r
+ * ================================================================================\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright Â© 2017-2018 Amdocs\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ *       http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+package org.onap.schema.validation;\r
+\r
+import java.io.File;\r
+import java.util.ArrayList;\r
+import java.util.HashMap;\r
+import java.util.List;\r
+import java.util.Map;\r
+import org.junit.Assert;\r
+import org.junit.Before;\r
+import org.junit.Rule;\r
+import org.junit.Test;\r
+import org.junit.rules.ExpectedException;\r
+import org.onap.crud.entity.Edge;\r
+import org.onap.crud.entity.Vertex;\r
+import org.onap.crud.exception.CrudException;\r
+import org.onap.crud.parser.EdgePayload;\r
+import org.onap.schema.EdgeRulesLoader;\r
+import org.onap.schema.validation.MultiplicityValidator.MultiplicityType;\r
+\r
+public class MultiplicityValidatorTest {\r
+\r
+    private final String postEdgePayload = "{" + "\"type\": \"tosca.relationships.HostedOn\","\r
+            + "\"source\": \"services/inventory/v12/vserver/50bdab41-ad1c-4d00-952c-a0aa5d827811\","\r
+            + "\"target\": \"services/inventory/v12/pserver/1d326bc7-b985-492b-9604-0d5d1f06f908\","\r
+            + "\"properties\": {" + "\"prevent-delete\": \"NONE\" } }";\r
+\r
+    @Rule\r
+    public ExpectedException thrown = ExpectedException.none();\r
+\r
+    @Before\r
+    public void init() {\r
+        ClassLoader classLoader = getClass().getClassLoader();\r
+        File dir = new File(classLoader.getResource("rules").getFile());\r
+        System.setProperty("CONFIG_HOME", dir.getParent());\r
+        EdgeRulesLoader.resetSchemaVersionContext();\r
+    }\r
+\r
+    @Test\r
+    public void testValidPayloadForMultiplicityRule() throws CrudException {\r
+        Map<String, List<Edge>> vertexMap = getEdgesForVertex(MultiplicityType.MANY2ONE, true);\r
+        MultiplicityValidator.validatePayloadMultiplicity(EdgePayload.fromJson(postEdgePayload),\r
+                vertexMap.get("source"), vertexMap.get("target"),\r
+                "tosca.relationships.HostedOn", "v11");\r
+    }\r
+\r
+    @Test\r
+    public void testInvalidPayloadForMultiplicityRule() throws CrudException {\r
+        thrown.expect(CrudException.class);\r
+        thrown.expectMessage("MANY2ONE multiplicity rule broken for Edge:vserver:pserver:tosca.relationships.HostedOn");\r
+\r
+        Map<String, List<Edge>> vertexMap = getEdgesForVertex(MultiplicityType.MANY2ONE, false);\r
+        MultiplicityValidator.validatePayloadMultiplicity(EdgePayload.fromJson(postEdgePayload),\r
+                vertexMap.get("source"), vertexMap.get("target"),\r
+                "tosca.relationships.HostedOn", "v11");\r
+    }\r
+\r
+    @Test\r
+    public void testIsVertexValidForMultiplicityType() throws CrudException {\r
+\r
+        Map<String, List<Edge>> vertexMap = getEdgesForVertex(MultiplicityType.MANY2MANY, true);\r
+        Assert.assertTrue(MultiplicityValidator.isVertexValidForMultiplicityType(vertexMap.get("source"),\r
+                vertexMap.get("target"), MultiplicityType.MANY2MANY));\r
+\r
+        vertexMap = getEdgesForVertex(MultiplicityType.MANY2ONE, true);\r
+        Assert.assertTrue(MultiplicityValidator.isVertexValidForMultiplicityType(\r
+                vertexMap.get("source"), vertexMap.get("target"), MultiplicityType.MANY2ONE));\r
+\r
+        vertexMap = getEdgesForVertex(MultiplicityType.ONE2MANY, true);\r
+        Assert.assertTrue(MultiplicityValidator.isVertexValidForMultiplicityType(\r
+                vertexMap.get("source"), vertexMap.get("target"), MultiplicityType.ONE2MANY));\r
+\r
+        vertexMap = getEdgesForVertex(MultiplicityType.ONE2ONE, true);\r
+        Assert.assertTrue(MultiplicityValidator.isVertexValidForMultiplicityType(\r
+                vertexMap.get("source"), vertexMap.get("target"), MultiplicityType.ONE2ONE));\r
+\r
+        vertexMap = getEdgesForVertex(MultiplicityType.ONE2MANY, false);\r
+        Assert.assertFalse(MultiplicityValidator.isVertexValidForMultiplicityType(\r
+                vertexMap.get("source"), vertexMap.get("target"), MultiplicityType.ONE2MANY));\r
+\r
+        vertexMap = getEdgesForVertex(MultiplicityType.ONE2ONE, false);\r
+        Assert.assertFalse(MultiplicityValidator.isVertexValidForMultiplicityType(\r
+                vertexMap.get("source"), vertexMap.get("target"), MultiplicityType.ONE2ONE));\r
+    }\r
+\r
+    private Map<String, List<Edge>> getEdgesForVertex(MultiplicityType multiplicityType, boolean pass) {\r
+\r
+        Map<String, List<Edge>> vertexMap = new HashMap<String, List<Edge>>();\r
+        List<Edge> edgesForSourceVertex = new ArrayList<>();\r
+        List<Edge> edgesForTargetVertex = new ArrayList<>();\r
+\r
+        switch (multiplicityType) {\r
+            case MANY2MANY:\r
+                if (pass) {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForSourceVertex.add(edge);\r
+                    edgesForTargetVertex.add(edge);\r
+                }\r
+                break;\r
+            case MANY2ONE:\r
+                if (pass) {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForTargetVertex.add(edge);\r
+                } else {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForSourceVertex.add(edge);\r
+                    edgesForTargetVertex.add(edge);\r
+                }\r
+                break;\r
+            case ONE2MANY:\r
+                if (pass) {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForSourceVertex.add(edge);\r
+                } else {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForSourceVertex.add(edge);\r
+                    edgesForTargetVertex.add(edge);\r
+                }\r
+                break;\r
+            case ONE2ONE:\r
+                if (!pass) {\r
+                    Edge edge = new Edge.Builder("type").source(new Vertex.Builder("source").build())\r
+                            .target(new Vertex.Builder("target").build()).build();\r
+                    edgesForSourceVertex.add(edge);\r
+                    edgesForTargetVertex.add(edge);\r
+                }\r
+                break;\r
+        }\r
+        vertexMap.put("source", edgesForSourceVertex);\r
+        vertexMap.put("target", edgesForTargetVertex);\r
+\r
+        return vertexMap;\r
+    }\r
+\r
+}\r
diff --git a/src/test/resources/model/edge_properties_v11.json b/src/test/resources/model/edge_properties_v11.json
deleted file mode 100644 (file)
index 8d00636..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-        "contains-other-v": "java.lang.String",
-        "delete-other-v": "java.lang.String",
-        "SVC-INFRA": "java.lang.String",
-        "prevent-delete": "java.lang.String"
-}
\ No newline at end of file
diff --git a/src/test/resources/oxm/aai_oxm_v10.xml b/src/test/resources/oxm/aai_oxm_v10.xml
new file mode 100644 (file)
index 0000000..5c3d450
--- /dev/null
@@ -0,0 +1,6363 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright Â© 2017 AT&T Intellectual Property. All rights reserved.
+    ================================================================================
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+    ============LICENSE_END=========================================================
+
+    ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+-->
+<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.onap.org.v11" xml-mapping-metadata-complete="true">
+    <xml-schema element-form-default="QUALIFIED">
+        <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v11" />
+    </xml-schema>
+    <java-types>
+        <java-type name="Inventory">
+            <xml-root-element name="inventory" />
+            <java-attributes>
+                <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" />
+                <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" />
+                <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" />
+                <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" />
+                <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" />
+                <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" />
+                <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" />
+                <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.onap.org.v11.AaiInternal" />
+                <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.onap.org.v11.Nodes"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Nodes">
+            <xml-root-element name="nodes" />
+        </java-type>
+        <java-type name="Search">
+            <xml-root-element name="search" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.onap.org.v11.EdgeTagQueryResult" />
+                <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.onap.org.v11.EdgeTagQueryRequest" />
+                <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.onap.org.v11.SearchResults" />
+                <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.onap.org.v11.SdnZoneResponse" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryResult">
+            <xml-root-element name="edge-tag-query-result" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="TaggedInventoryItemList">
+            <xml-root-element name="tagged-inventory-item-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.onap.org.v11.InventoryItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItem">
+            <xml-root-element name="inventory-item" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
+                <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.onap.org.v11.InventoryItemData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItemData">
+            <xml-root-element name="inventory-item-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryRequest">
+            <xml-root-element name="edge-tag-query-request" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
+                <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
+                <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.onap.org.v11.StartNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.onap.org.v11.IncludeNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.onap.org.v11.SecondaryFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="StartNodeFilter">
+            <xml-root-element name="start-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IncludeNodeFilter">
+            <xml-root-element name="include-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SecondaryFilter">
+            <xml-root-element name="secondary-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SearchResults">
+            <xml-root-element name="search-results" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.onap.org.v11.ResultData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResultData">
+            <xml-root-element name="result-data" />
+            <java-attributes>
+                <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The URL to the specific resource" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SdnZoneResponse">
+            <xml-root-element name="sdn-zone-response" />
+            <java-attributes>
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.onap.org.v11.AzAndDvsSwitches" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AzAndDvsSwitches">
+            <xml-root-element name="az-and-dvs-switches" />
+            <java-attributes>
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Actions">
+            <xml-properties>
+                <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
+            </xml-properties>
+            <xml-root-element name="actions" />
+            <java-attributes>
+                <xml-element java-attribute="update" name="update" type="inventory.aai.onap.org.v11.Update" />
+                <xml-element java-attribute="notify" name="notify" type="inventory.aai.onap.org.v11.Notify" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Update">
+            <xml-properties>
+                <xml-property name="description" value="Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team." />
+            </xml-properties>
+            <xml-root-element name="update" />
+            <java-attributes>
+                <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.onap.org.v11.UpdateNodeKey" />
+                <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.onap.org.v11.Action" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Action">
+            <xml-root-element name="action" />
+            <java-attributes>
+                <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.onap.org.v11.ActionData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ActionData">
+            <xml-root-element name="action-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="UpdateNodeKey">
+            <xml-root-element name="update-node-key" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Notify">
+            <xml-root-element name="notify" />
+            <java-attributes>
+                <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
+                <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
+                <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.onap.org.v11.KeyData" />
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="KeyData">
+            <xml-root-element name="key-data" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExternalSystem">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for external system." />
+            </xml-properties>
+            <xml-root-element name="external-system" />
+            <java-attributes>
+                <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" />
+                <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" />
+                <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EsrEmsList">
+            <xml-root-element name="esr-ems-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrEms">
+            <xml-root-element name="esr-ems" />
+            <java-attributes>
+                <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of EMS." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist EMS address information used by EMS driver." />
+                <xml-property name="indexedProps" value="ems-id" />
+                <xml-property name="searchable" value="ems-id" />
+                <xml-property name="container" value="esr-ems-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfmList">
+            <xml-root-element name="esr-vnfm-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfm">
+            <xml-root-element name="esr-vnfm" />
+            <java-attributes>
+                <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VNFM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indecate the VIM to deploy VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="certificate url of VNFM." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist VNFM address information used by VF-C." />
+                <xml-property name="indexedProps" value="vnfm-id" />
+                <xml-property name="searchable" value="vnfm-id" />
+                <xml-property name="container" value="esr-vnfm-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdncList">
+            <xml-root-element name="esr-thirdparty-sdnc-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdnc">
+            <xml-root-element name="esr-thirdparty-sdnc" />
+            <java-attributes>
+                <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of SDNC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="location" name="location" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="productName" name="product-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access SDNC server." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." />
+                <xml-property name="indexedProps" value="sdnc-id" />
+                <xml-property name="searchable" value="sdnc-id" />
+                <xml-property name="container" value="esr-thirdparty-sdnc-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfoList">
+            <xml-root-element name="esr-system-info-list" />
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level external system auth info." />
+            </xml-properties>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfo">
+            <xml-root-element name="esr-system-info" />
+            <java-attributes>
+                <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of esr system info." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemName" name="system-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of external system." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vendor" name="vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vendor of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="version" name="version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="version of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="url used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="username used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="password" name="password" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access external systems." />
+                    </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="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of third party SDNC, for example netconf/snmp." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ca file content if enabled ssl on auth-url." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether to verify VIM's certificate." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service IP of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="port" name="port" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service port of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="domain info for authentication." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="default tenant of VIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="ftp passive mode or not." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="resource or performance data file path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemStatus" name="system-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the status of external system." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist common address information of external systems." />
+                <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="container" value="esr-system-info-list" />
+                <xml-property name="dependentOn" value="cloud-region,esr-ems,esr-vnfm,esr-thirdparty-sdnc" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudInfrastructure">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for cloud infrastructure." />
+            </xml-properties>
+            <xml-root-element name="cloud-infrastructure" />
+            <java-attributes>
+                <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.onap.org.v11.Complexes" />
+                <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.onap.org.v11.CloudRegions" />
+                <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.onap.org.v11.NetworkProfiles" />
+                <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.onap.org.v11.Pservers" />
+                <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.onap.org.v11.VirtualDataCenters" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CloudRegions">
+            <xml-root-element name="cloud-regions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.onap.org.v11.CloudRegion" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudRegion">
+            <xml-root-element name="cloud-region" />
+            <java-attributes>
+                <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudExtraInfo" name="cloud-extra-info" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudEpaCaps" name="cloud-epa-caps" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MultiVIM will discover and expose EPA capabilities." />
+                    </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="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v11.VolumeGroups" />
+                <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v11.Tenants" />
+                <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v11.Flavors" />
+                <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v11.GroupAssignments" />
+                <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v11.Snapshots" />
+                <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v11.Images" />
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v11.VipIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v11.VipIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." />
+                <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
+                <xml-property name="nameProps" value="owner-defined-type" />
+                <xml-property name="container" value="cloud-regions" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VolumeGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level storage." />
+            </xml-properties>
+            <xml-root-element name="volume-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.onap.org.v11.VolumeGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VolumeGroup">
+            <xml-root-element name="volume-group" />
+            <java-attributes>
+                <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of volume-group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the volume group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persistent block-level storage." />
+                <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
+                <xml-property name="searchable" value="volume-group-id,volume-group-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="volume-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RelationshipList">
+            <xml-root-element name="relationship-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.onap.org.v11.Relationship" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Relationship">
+            <xml-root-element name="relationship" />
+            <java-attributes>
+                <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to the object in A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.onap.org.v11.RelationshipData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.onap.org.v11.RelatedToProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedToProperty">
+            <xml-root-element name="related-to-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Key part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelationshipData">
+            <xml-root-element name="relationship-data" />
+            <java-attributes>
+                <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value of the attribute." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Complexes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+            </xml-properties>
+            <xml-root-element name="complexes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.onap.org.v11.Complex" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Complex">
+            <xml-root-element name="complex" />
+            <java-attributes>
+                <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gamma complex name for LCP instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </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="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type, e.g., central office, data center." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
+                <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
+                <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
+                <xml-element java-attribute="state" name="state" type="java.lang.String" />
+                <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
+                <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
+                <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
+                <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
+                <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
+                <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
+                <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
+                <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.onap.org.v11.CtagPools" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+                <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
+                <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
+                <xml-property name="uniqueProps" value="physical-location-id" />
+                <xml-property name="container" value="complexes" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CtagPools">
+            <xml-root-element name="ctag-pools" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.onap.org.v11.CtagPool" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagPool">
+            <xml-root-element name="ctag-pool" />
+            <java-attributes>
+                <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="The Target provider edge router" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes what the intended purpose of this pool is." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Comma separated list of ctags" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="complex" />
+                <xml-property name="container" value="ctag-pools" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenants">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack tenants." />
+            </xml-properties>
+            <xml-root-element name="tenants" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.onap.org.v11.Tenant" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenant">
+            <xml-root-element name="tenant" />
+            <java-attributes>
+                <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id relative to the cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Readable name of tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantContext" name="tenant-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the tenant context." />
+                    </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="vservers" name="vservers" type="inventory.aai.onap.org.v11.Vservers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack tenant" />
+                <xml-property name="nameProps" value="tenant-name" />
+                <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
+                <xml-property name="searchable" value="tenant-id,tenant-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="tenants" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
+            </xml-properties>
+            <xml-root-element name="vservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.onap.org.v11.Vserver" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vserver">
+            <xml-root-element name="vserver" />
+            <java-attributes>
+                <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternative name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverSelflink" name="vserver-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 default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
+                    </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="volumes" name="volumes" type="inventory.aai.onap.org.v11.Volumes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
+                <xml-property name="nameProps" value="vserver-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
+                <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
+                <xml-property name="dependentOn" value="tenant" />
+                <xml-property name="container" value="vservers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical interfaces." />
+            </xml-properties>
+            <xml-root-element name="l-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.onap.org.v11.LInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LInterface">
+            <xml-root-element name="l-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name given to the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC address for the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="allowedAddressPairs" name="allowed-address-pairs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Freeform field for storing an ip address, list of ip addresses or a subnet block." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.onap.org.v11.Vlans" />
+                <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.onap.org.v11.SriovVfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </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" />
+                <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface" />
+                <xml-property name="container" value="l-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SriovVfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-vfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.onap.org.v11.SriovVf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovVf">
+            <xml-root-element name="sriov-vf" />
+            <java-attributes>
+                <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option is used to set the link status.  Valid values as of 1607 are on, off, and auto." />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
+                <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="sriov-vfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv4AddressList">
+            <xml-root-element name="l3-interface-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vlans">
+            <xml-root-element name="vlans" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.onap.org.v11.Vlan" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vlan">
+            <xml-root-element name="vlan" />
+            <java-attributes>
+                <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String that identifies the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
+                    </xml-properties>
+                </xml-element>                  
+                <xml-element java-attribute="vpnKey" name="vpn-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan" />
+                <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-key" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="vlans" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv6AddressList">
+            <xml-root-element name="l3-interface-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Volumes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
+            </xml-properties>
+            <xml-root-element name="volumes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.onap.org.v11.Volume" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Volume">
+            <xml-root-element name="volume" />
+            <java-attributes>
+                <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeSelflink" name="volume-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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Ephemeral Block storage volume." />
+                <xml-property name="indexedProps" value="volume-id" />
+                <xml-property name="dependentOn" value="vserver" />
+                <xml-property name="container" value="volumes" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Flavors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack flavors." />
+            </xml-properties>
+            <xml-root-element name="flavors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.onap.org.v11.Flavor" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Flavor">
+            <xml-root-element name="flavor" />
+            <java-attributes>
+                <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of CPUs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of memory" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of ephemeral disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="amount of swap space allocation" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSelflink" name="flavor-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="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack flavor." />
+                <xml-property name="nameProps" value="flavor-name" />
+                <xml-property name="indexedProps" value="flavor-name,flavor-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="flavors" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Snapshots">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack snapshots" />
+            </xml-properties>
+            <xml-root-element name="snapshots" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.onap.org.v11.Snapshot" />
+            </java-attributes>      
+        </java-type>
+        
+        <java-type name="Snapshot">
+            <xml-root-element name="snapshot" />
+            <java-attributes>
+                <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" 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="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack snapshot" />
+                <xml-property name="nameProps" value="snapshot-name" />
+                <xml-property name="uniqueProps" value="snapshot-id" />
+                <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="snapshots" />
+            </xml-properties>   
+        </java-type>
+        
+        <java-type name="GroupAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack group assignments" />
+            </xml-properties>
+            <xml-root-element name="group-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.onap.org.v11.GroupAssignment" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="GroupAssignment">
+            <xml-root-element name="group-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group type - the type of group this instance refers to" />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name - name assigned to the group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group description - description of the group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
+                <xml-property name="nameProps" value="group-name" />
+                <xml-property name="indexedProps" value="group-id,group-type,group-name" />
+                <xml-property name="searchable" value="group-id,group-name"/>
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="group-assignments" />
+            </xml-properties>
+        </java-type>            
+
+        <java-type name="Images">
+            <xml-properties>
+                <xml-property name="description" value="Collectio of Openstack images." />
+            </xml-properties>
+            <xml-root-element name="images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.onap.org.v11.Image" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Image">
+            <xml-root-element name="image" />
+            <java-attributes>
+                <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Image id, expected to be unique across cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Image name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageSelflink" name="image-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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack image." />
+                <xml-property name="nameProps" value="image-name" />
+                <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="images" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Metadata">
+            <xml-properties>
+                <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
+            </xml-properties>
+            <xml-root-element name="metadata" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.onap.org.v11.Metadatum" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Metadatum">
+            <xml-root-element name="metadatum" />
+            <java-attributes>
+                <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
+                <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>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Key/value pairs" />
+                <xml-property name="indexedProps" value="metaname" />
+                <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
+                <xml-property name="container" value="metadata" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="DvsSwitches">
+            <xml-properties>
+                <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs." />
+            </xml-properties>
+            <xml-root-element name="dvs-switches" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.onap.org.v11.DvsSwitch" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="DvsSwitch">
+            <xml-root-element name="dvs-switch" />
+            <java-attributes>
+                <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS switch name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL used to reach the vcenter" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
+                <xml-property name="indexedProps" value="vcenter-url,switch-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="dvs-switches" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="NetworkProfiles">
+            <xml-properties>
+                <xml-property name="description" value="Collection of network profiles" />
+            </xml-properties>
+            <xml-root-element name="network-profiles" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.onap.org.v11.NetworkProfile" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NetworkProfile">
+            <xml-root-element name="network-profile" />
+            <java-attributes>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique name of network profile." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted SNMP community string" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
+                <xml-property name="indexedProps" value="nm-profile-name" />
+                <xml-property name="container" value="network-profiles" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of compute hosts." />
+            </xml-properties>
+            <xml-root-element name="pservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.onap.org.v11.Pserver" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pserver">
+            <xml-root-element name="pserver" />
+            <java-attributes>
+                <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value from executing hostname on the compute node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="PTNII name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of cpus" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk size, in GBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="RAM size, in MBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Fully-qualified domain name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverSelflink" name="pserver-selflink" 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="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number, may be queried" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="internet topology of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </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="pserverName2" name="pserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="alternative pserver name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="purpose of pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates who owns and or manages the device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostProfile" name="host-profile" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The host profile that defines the configuration of the pserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
+                <xml-property name="nameProps" value="pserver-name2" />
+                <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
+                <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
+                <xml-property name="container" value="pservers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical interfaces." />
+            </xml-properties>
+            <xml-root-element name="p-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.onap.org.v11.PInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PInterface">
+            <xml-root-element name="p-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the physical interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nature of the services and connectivity on this port." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the physical properties of the interface." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macAddress" name="mac-addresss" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC Address of the p-interface." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="inventory status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="sriovPfs" name="sriov-pfs" type="inventory.aai.onap.org.v11.SriovPfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Physical interface (e.g., nic)" />
+                <xml-property name="indexedProps" value="interface-name,prov-status" />
+                <xml-property name="nameProps" value="prov-status" />
+                <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
+                <xml-property name="container" value="p-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LagInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregate interfaces." />
+            </xml-properties>
+            <xml-root-element name="lag-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.onap.org.v11.LagInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagInterface">
+            <xml-root-element name="lag-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the link aggregate interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Link aggregate interface" />
+                <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
+                <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf" />
+                <xml-property name="container" value="lag-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OamNetworks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. " />
+            </xml-properties>
+            <xml-root-element name="oam-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.onap.org.v11.OamNetwork" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OamNetwork">
+            <xml-root-element name="oam-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="cvlan-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="OAM network, to be deprecated shortly.  Do not use for new purposes. " />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="oam-networks" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="AvailabilityZones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of availability zones" />
+            </xml-properties>
+            <xml-root-element name="availability-zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AvailabilityZone">
+            <xml-root-element name="availability-zone" />
+            <java-attributes>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone.  Unique across a cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of hypervisor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="availability-zones" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VirtualDataCenters">
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+            </xml-properties>
+            <xml-root-element name="virtual-data-centers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.onap.org.v11.VirtualDataCenter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VirtualDataCenter">
+            <xml-root-element name="virtual-data-center" />
+            <java-attributes>
+                <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the vdc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the virtual data center" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+                <xml-property name="nameProps" value="vdc-name" />
+                <xml-property name="indexedProps" value="vdc-name,vdc-id" />
+                <xml-property name="container" value="virtual-data-centers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Business">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for business related constructs" />
+            </xml-properties>
+            <xml-root-element name="business" />
+            <java-attributes>
+                <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.onap.org.v11.Connectors" />
+                <xml-element java-attribute="customers" name="customers" type="inventory.aai.onap.org.v11.Customers" />
+                <xml-element java-attribute="linesOfBusiness" name="lines-of-business" type="inventory.aai.onap.org.v11.LinesOfBusiness" />
+                <xml-element java-attribute="owningEntities" name="owning-entities" type="inventory.aai.onap.org.v11.OwningEntities" />
+                <xml-element java-attribute="platforms" name="platforms" type="inventory.aai.onap.org.v11.Platforms" />
+                <xml-element java-attribute="projects" name="projects" type="inventory.aai.onap.org.v11.Projects" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Projects">
+            <xml-properties>
+                <xml-property name="description" value="Collection of projects" />
+            </xml-properties>
+            <xml-root-element name="projects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="project" name="project" type="inventory.aai.onap.org.v11.Project" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Project">
+            <xml-root-element name="project" />
+            <java-attributes>
+                <xml-element java-attribute="projectName" name="project-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the project deploying a service" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes the project" />
+                <xml-property name="indexedProps" value="project-name" />
+                <xml-property name="uniqueProps" value="project-name" />
+                <xml-property name="container" value="projects" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Connectors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+            </xml-properties>
+            <xml-root-element name="connectors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.onap.org.v11.Connector" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Connector">
+            <xml-root-element name="connector" />
+            <java-attributes>
+                <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of resource instance." />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+                <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
+                <xml-property name="container" value="connectors" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
+            </xml-properties>
+            <xml-root-element name="customers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.onap.org.v11.Customer" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customer">
+            <xml-root-element name="customer" />
+            <java-attributes>
+                <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
+                        <xml-property name="defaultValue" value="CUST" />
+                    </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="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.onap.org.v11.ServiceSubscriptions" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
+                <xml-property name="nameProps" value="subscriber-name" />
+                <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
+                <xml-property name="searchable" value="global-customer-id,subscriber-name" />
+                <xml-property name="uniqueProps" value="global-customer-id" />
+                <xml-property name="container" value="customers" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LinesOfBusiness">
+            <xml-properties>
+                <xml-property name="description" value="Collection of lines-of-business" />
+            </xml-properties>
+            <xml-root-element name="lines-of-business" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lineOfBusiness" name="line-of-business" type="inventory.aai.onap.org.v11.LineOfBusiness" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LineOfBusiness">
+            <xml-root-element name="line-of-business" />
+            <java-attributes>
+                <xml-element java-attribute="lineOfBusinessName" name="line-of-business-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the line-of-business (product)" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a line-of-business" />
+                <xml-property name="indexedProps" value="line-of-business-name" />
+                <xml-property name="uniqueProps" value="line-of-business-name" />
+                <xml-property name="container" value="lines-of-business" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OwningEntities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of owning-entities" />
+            </xml-properties>
+            <xml-root-element name="owning-entities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="owningEntity" name="owning-entity" type="inventory.aai.onap.org.v11.OwningEntity" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OwningEntity">
+            <xml-root-element name="owning-entity" />
+            <java-attributes>
+                <xml-element java-attribute="owningEntityId" name="owning-entity-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of an owning entity" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="owningEntityName" name="owning-entity-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Owning entity name" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an owning-entity" />
+                <xml-property name="indexedProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="searchable" value="owning-entity-id" />
+                <xml-property name="uniqueProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="container" value="owning-entities" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Platforms">
+            <xml-properties>
+                <xml-property name="description" value="Collection of platforms" />
+            </xml-properties>
+            <xml-root-element name="platforms" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="platform" name="platform" type="inventory.aai.onap.org.v11.Platform" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Platform">
+            <xml-root-element name="platform" />
+            <java-attributes>
+                <xml-element java-attribute="platformName" name="platform-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the platform" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a platform" />
+                <xml-property name="indexedProps" value="platform-name" />
+                <xml-property name="uniqueProps" value="platform-name" />
+                <xml-property name="container" value="platforms" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceSubscriptions">
+            <xml-properties>
+                <xml-property name="description" value="Collection of objects that group service instances." />
+            </xml-properties>
+            <xml-root-element name="service-subscriptions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.onap.org.v11.ServiceSubscription" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceSubscription">
+            <xml-root-element name="service-subscription" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
+                    </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="serviceInstances" name="service-instances" type="inventory.aai.onap.org.v11.ServiceInstances">
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Object that group service instances." />
+                <xml-property name="indexedProps" value="service-type" />
+                <xml-property name="dependentOn" value="customer" />
+                <xml-property name="container" value="service-subscriptions" />
+                <xml-property name="crossEntityReference" value="service-instance,service-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceInstances">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service instances" />
+            </xml-properties>
+            <xml-root-element name="service-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.onap.org.v11.ServiceInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceInstance">
+            <xml-root-element name="service-instance" />
+            <java-attributes>
+                <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Uniquely identifies this instance of a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store a name assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing the service role." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="createdAt" name="created-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="create time of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="updatedAt" name="updated-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="last update of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="short description for service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <!-- for storing the nsd_id create edge between services -->
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL customers will use to access the vHN Portal." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
+                    </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="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v11.AllottedResources" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Instance of a service" />
+                <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
+                <xml-property name="nameProps" value="service-instance-name" />
+                <xml-property name="searchable" value="service-instance-id,service-instance-name" />
+                <xml-property name="uniqueProps" value="service-instance-id" />
+                <xml-property name="dependentOn" value="service-subscription" />
+                <xml-property name="container" value="service-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceDesignAndCreation">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for objects managed by ASDC" />
+            </xml-properties>
+            <xml-root-element name="service-design-and-creation" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.onap.org.v11.VnfImages" />
+                <xml-element java-attribute="services" name="services" type="inventory.aai.onap.org.v11.Services" />
+                <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.onap.org.v11.ServiceCapabilities" />
+                <xml-element java-attribute="models" name="models" type="inventory.aai.onap.org.v11.Models" />
+                <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.onap.org.v11.NamedQueries" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImages">
+            <xml-properties>
+                <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+            </xml-properties>
+            <xml-root-element name="vnf-images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.onap.org.v11.VnfImage" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImage">
+            <xml-root-element name="vnf-image" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of this asset" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+                <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
+                <xml-property name="uniqueProps" value="vnf-image-uuid" />
+                <xml-property name="container" value="vnf-images" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Services">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC." />
+            </xml-properties>
+            <xml-root-element name="services" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.onap.org.v11.Service" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Service">
+            <xml-root-element name="service" />
+            <java-attributes>
+                <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description of the service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceSelflink" name="service-selflink" 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="serviceVersion" name="service-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services." />
+                <xml-property name="indexedProps" value="service-description,service-id" />
+                <xml-property name="container" value="services" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceCapabilities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service capabilities." />
+            </xml-properties>
+            <xml-root-element name="service-capabilities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.onap.org.v11.ServiceCapability" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceCapability">
+            <xml-root-element name="service-capability" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this." />
+                <xml-property name="indexedProps" value="service-type,vnf-type" />
+                <xml-property name="container" value="service-capabilities" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Network">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for network inventory resources." />
+            </xml-properties>
+            <xml-root-element name="network" />
+            <java-attributes>
+                <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v11.LogicalLinks" />
+                <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.onap.org.v11.SitePairSets" />
+                <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.onap.org.v11.VpnBindings" />
+                <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.onap.org.v11.VplsPes" />
+                <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.onap.org.v11.MulticastConfigurations" />
+                <xml-element java-attribute="vces" name="vces" type="inventory.aai.onap.org.v11.Vces" />
+                <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.onap.org.v11.Vnfcs" />
+                <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.onap.org.v11.L3Networks" />
+                <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v11.NetworkPolicies" />
+                <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.onap.org.v11.GenericVnfs" />
+                <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.onap.org.v11.LagLinks" />
+                <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.onap.org.v11.Newvces" />
+                <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.onap.org.v11.Pnfs" />
+                <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.onap.org.v11.PhysicalLinks" />
+                <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.onap.org.v11.IpsecConfigurations" />
+                <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.onap.org.v11.RouteTableReferences" />
+                <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.onap.org.v11.InstanceGroups" />
+                <xml-element java-attribute="zones" name="zones" type="inventory.aai.onap.org.v11.Zones" />
+                <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v11.Configurations" />
+            </java-attributes>
+        </java-type>
+        <java-type name="Configurations">
+            <xml-properties>
+                <xml-property name="description" value="Collection of configurations" />
+            </xml-properties>
+            <xml-root-element name="configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="configuration" name="configurations" type="inventory.aai.onap.org.v11.Configuration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Configuration">
+            <xml-root-element name="configuration" />
+            <java-attributes>
+                <xml-element java-attribute="configurationId" name="configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID assigned to configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the entity that will manage this feature. Could be an organization or the name of the application as well." />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="configurationName" name="configuration-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationType" name="configuration-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="port-mirroring-configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSubType" name="configuration-sub-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vprobe, pprobe." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSelflink" name="configuration-selflink" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to endpoint where AAI can get more details from SDN-GC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of  the configuration used to customize the resource" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Port Mirror Configuration." />
+                <xml-property name="indexedProps" value="configuration-id,model-invariant-id,model-version-id" />
+                <xml-property name="uniqueProps" value="configuration-id" />
+                <xml-property name="container" value="configurations" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="nameProps" value="configuration-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LogicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical connections" />
+            </xml-properties>
+            <xml-root-element name="logical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.onap.org.v11.LogicalLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LogicalLink">
+            <xml-root-element name="logical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of logical link, e.g., evc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4, v6, or ds for dual stack" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="For example, static or BGP" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of operational status of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of the network use of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Reason for this entity, role it is playing" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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,purpose" />
+                <xml-property name="uniqueProps" value="link-id" />
+                <xml-property name="container" value="logical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairSets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
+            </xml-properties>
+            <xml-root-element name="site-pair-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.onap.org.v11.SitePairSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePairSet">
+            <xml-root-element name="site-pair-set" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of site pair set." />
+                    </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="routingInstances" name="routing-instances" type="inventory.aai.onap.org.v11.RoutingInstances" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
+                <xml-property name="indexedProps" value="site-pair-set-id" />
+                <xml-property name="uniqueProps" value="site-pair-set-id" />
+                <xml-property name="container" value="site-pair-sets" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RoutingInstances">
+            <xml-properties>
+                <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
+            </xml-properties>
+            <xml-root-element name="routing-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.onap.org.v11.RoutingInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RoutingInstance">
+            <xml-root-element name="routing-instance" />
+            <java-attributes>
+                <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of routing instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rpm owner" />
+                    </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="sitePairs" name="site-pairs" type="inventory.aai.onap.org.v11.SitePairs" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="routing-instance-id" />
+                <xml-property name="dependentOn" value="site-pair-set" />
+                <xml-property name="container" value="routing-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairs">
+            <xml-properties>
+                <xml-property name="description" value="probe within a set" />
+            </xml-properties>
+            <xml-root-element name="site-pairs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.onap.org.v11.SitePair" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePair">
+            <xml-root-element name="site-pair" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version, v4, v6" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, 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="classesOfService" name="classes-of-service" type="inventory.aai.onap.org.v11.ClassesOfService" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="site-pair-id" />
+                <xml-property name="uniqueProps" value="site-pair-id" />
+                <xml-property name="dependentOn" value="routing-instance" />
+                <xml-property name="container" value="site-pairs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ClassesOfService">
+            <xml-properties>
+                <xml-property name="description" value="class-of-service of probe" />
+            </xml-properties>
+            <xml-root-element name="classes-of-service" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.onap.org.v11.ClassOfService" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ClassOfService">
+            <xml-root-element name="class-of-service" />
+            <java-attributes>
+                <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of probe" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="cos" />
+                <xml-property name="dependentOn" value="site-pair" />
+                <xml-property name="container" value="classes-of-service" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VpnBindings">
+            <xml-root-element name="vpn-bindings" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.onap.org.v11.VpnBinding" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VpnBinding">
+            <xml-root-element name="vpn-binding" />
+            <java-attributes>
+                <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN Name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnRegion" name="vpn-region" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="region of customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="customerVpnId" name="customer-vpn-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id for this customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
+                    </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="routeTargets" name="route-targets" type="inventory.aai.onap.org.v11.RouteTargets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList">
+                    <xml-properties>
+                        <xml-property name="description" value="l3-networks relate to vpn-bindings" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPN binding" />
+                <xml-property name="nameProps" value="vpn-name,vpn-type" />
+                <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
+                <xml-property name="searchable" value="vpn-id,vpn-name" />
+                <xml-property name="uniqueProps" value="vpn-id" />
+                <xml-property name="container" value="vpn-bindings" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VplsPes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
+            </xml-properties>
+            <xml-root-element name="vpls-pes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.onap.org.v11.VplsPe" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VplsPe">
+            <xml-root-element name="vpls-pe" />
+            <java-attributes>
+                <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for stag to get to VCE" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPLS Provider Edge routers." />
+                <xml-property name="indexedProps" value="prov-status,equipment-name" />
+                <xml-property name="container" value="vpls-pes" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="MulticastConfigurations">
+            <xml-properties>
+                <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
+            </xml-properties>
+            <xml-root-element name="multicast-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.onap.org.v11.MulticastConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="MulticastConfiguration">
+            <xml-root-element name="multicast-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of multicast configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of multicast configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rp type of multicast configuration" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="multicast-configuration-id" />
+                <xml-property name="uniqueProps" value="multicast-configuration-id" />
+                <xml-property name="container" value="multicast-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated." />
+            </xml-properties>
+            <xml-root-element name="vces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.onap.org.v11.Vce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vce">
+            <xml-root-element name="vce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network role being played by this VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router.  Implied length of /64." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  see child relationships" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.onap.org.v11.PortGroups" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="vces" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PortGroups">
+            <xml-root-element name="port-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.onap.org.v11.PortGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PortGroup">
+            <xml-root-element name="port-group" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network name of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </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="portGroupId" name="port-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for port group in vmware" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Likely to duplicate value of neutron network name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.onap.org.v11.CvlanTags" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
+                <xml-property name="nameProps" value="port-group-name" />
+                <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
+                <xml-property name="dependentOn" value="vce" />
+                <xml-property name="container" value="port-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CvlanTags">
+            <xml-root-element name="cvlan-tags" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.onap.org.v11.CvlanTagEntry" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CvlanTagEntry">
+            <xml-root-element name="cvlan-tag-entry" />
+            <java-attributes>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="dependentOn" value="port-group" />
+                <xml-property name="indexedProps" value="cvlan-tag" />
+                <xml-property name="container" value="cvlan-tags" />
+            </xml-properties>
+        </java-type>
+
+
+
+        <java-type name="Vnfcs">
+            <xml-properties>
+                <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
+            </xml-properties>
+            <xml-root-element name="vnfcs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.onap.org.v11.Vnfc" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vnfc">
+            <xml-root-element name="vnfc" />
+            <java-attributes>
+                <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vnfc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcNamingCode" name="nfc-naming-code" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Short code that is used in naming instances of the item being modeled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcFunction" name="nfc-function" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="prov status of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Oam V4 vip address of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group notation of VNFC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                    </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.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vnfc-name,prov-status,nfc-function,nfc-naming-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation,model-invariant-id,model-version-id" />
+                <xml-property name="searchable" value="vnfc-name" />
+                <xml-property name="container" value="vnfcs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3Networks">
+            <xml-root-element name="l3-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.onap.org.v11.L3Network" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="L3Network">
+            <xml-root-element name="l3-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network, governed by some naming convention.." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the network - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role the network plans - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network technology - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Set to true if bound to VPN" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="network role instance" />
+                    </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="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the physical network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v11.Subnets" />
+                <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v11.CtagAssignments" />
+                <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v11.SegmentationAssignments" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" >
+                    <xml-properties>
+                        <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Generic network definition" />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
+                <xml-property name="searchable" value="network-id,network-name" />
+                <xml-property name="uniqueProps" value="network-id" />
+                <xml-property name="container" value="l3-networks" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="NetworkPolicies">
+            <xml-root-element name="network-policies" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.onap.org.v11.NetworkPolicy" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NetworkPolicy">
+            <xml-root-element name="network-policy" />
+            <java-attributes>
+                <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID representing unique key to this instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the policy" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID for the openStack Heat instance" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="nameProps" value="network-policy-fqdn" />
+                <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="uniqueProps" value="network-policy-id" />
+                <xml-property name="container" value="network-policies" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="CtagAssignments">
+            <xml-root-element name="ctag-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.onap.org.v11.CtagAssignment" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagAssignment">
+            <xml-root-element name="ctag-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="id." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vlan-id-inner" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="ctag-assignments" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Subnets">
+            <xml-root-element name="subnets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.onap.org.v11.Subnet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Subnet">
+            <xml-root-element name="subnet" />
+            <java-attributes>
+                <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Subnet ID, should be UUID." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the subnet." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of this subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="gateway ip address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="network start address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="cidr mask" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="dhcp enabled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the start address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the last address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="subnetRole" name="subnet-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the subnet, referenced when assigning IPs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAssignmentDirection" name="ip-assignment-direction" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip address assignment direction of the subnet" />
+                    </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="subnetSequence" name="subnet-sequence" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="sequence of the subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v11.HostRoutes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="subnet-id,subnet-name" />
+                <xml-property name="nameProps" value="subnet-name" />
+                <xml-property name="uniqueProps" value="subnet-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="subnets" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VNFs" />
+            </xml-properties>
+            <xml-root-element name="generic-vnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.onap.org.v11.GenericVnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnf">
+            <xml-root-element name="generic-vnf" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfInstanceId" name="vnf-instance-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf instance id." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfPackageName" name="vnf-package-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value=""/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfDiscriptorName" name="vnf-discriptor-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf discriptor name"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="jobId" name="job-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="job id corresponding to vnf"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 Loopback address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 management address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nshd" name="nshd" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of associated SHD in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nvm" name="nvm" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vms in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nnet" name="nnet" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of network in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </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="summaryStatus" name="summary-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the specific entitlement resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the license assignment group.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the actual license resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="as-number of the VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="represents sub zone of the rr plane" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of NF" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this model will be providing" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="string assigned to this model used for naming purposes" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gateway address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length for oam-address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for S-TAG to get to VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network Management profile of this VNF" />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+                <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.onap.org.v11.VfModules" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="General purpose VNF" />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="generic-vnfs" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+                <xml-property name="containsSuggestibleProps" value="true"/>
+                <xml-property name="suggestionAliases" value="VNFs"/>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VfModules">
+            <xml-properties>
+                <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
+            </xml-properties>
+            <xml-root-element name="vf-modules" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.onap.org.v11.VfModule" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VfModule">
+            <xml-root-element name="vf-module" />
+            <java-attributes>
+                <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vf-module." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vf-module" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the Contrail unique ID for a service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="a deployment unit of VNFCs" />
+                <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
+                <xml-property name="searchable" value="vf-module-id,vf-module-name" />
+                <xml-property name="dependentOn" value="generic-vnf" />
+                <xml-property name="container" value="vf-modules" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="LagLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregation connections" />
+            </xml-properties>
+            <xml-root-element name="lag-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.onap.org.v11.LagLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagLink">
+            <xml-root-element name="lag-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="LAG links can connect lag-interfaces" />
+                <xml-property name="indexedProps" value="link-name" />
+                <xml-property name="container" value="lag-links" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Newvces">
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+            </xml-properties>
+            <xml-root-element name="newvces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.onap.org.v11.Newvce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Newvce">
+            <xml-root-element name="newvce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
+                <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id2" />
+                <xml-property name="container" value="newvces" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Physical Network Functions." />
+            </xml-properties>
+            <xml-root-element name="pnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.onap.org.v11.Pnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnf">
+            <xml-root-element name="pnf" />
+            <java-attributes>
+                <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="source of name2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of pnf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number of the device" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </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="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </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" />
+                <xml-property name="searchable" value="pnf-name" />
+                <xml-property name="uniqueProps" value="pnf-name" />
+                <xml-property name="container" value="pnfs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
+            </xml-properties>
+            <xml-root-element name="physical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.onap.org.v11.PhysicalLink" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLink">
+            <xml-root-element name="physical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit it" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the service Provider on this link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpValue" name="service-provider-bandwidth-up-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Upstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpUnits" name="service-provider-bandwidth-up-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for the upstream BW value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownValue" name="service-provider-bandwidth-down-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Downstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownUnits" name="service-provider-bandwidth-down-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for downstream BW value" />
+                    </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.v11.RelationshipList" />
+            </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="alternateKeys1" value="circuit-id" />
+                <xml-property name="container" value="physical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name,circuit-id" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VigServers">
+            <xml-root-element name="vig-servers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.onap.org.v11.VigServer" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VigServer">
+            <xml-root-element name="vig-server" />
+            <java-attributes>
+                <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v4 IP of the vig server" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v6 IP of the vig server" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
+                <xml-property name="indexedProps" value="vig-address-type" />
+                <xml-property name="dependentOn" value="ipsec-configuration" />
+                <xml-property name="container" value="vig-servers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="IpsecConfigurations">
+            <xml-root-element name="ipsec-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.onap.org.v11.IpsecConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IpsecConfiguration">
+            <xml-root-element name="ipsec-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of this configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network address of shared DMZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="can be 1 or 2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="pre-shared key for the above group name " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Lifetime for IKEv1 SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Life time for IPSec SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="enable PFS or not" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The time between DPD probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.onap.org.v11.VigServers" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
+                <xml-property name="indexedProps" value="ipsec-configuration-id" />
+                <xml-property name="uniqueProps" value="ipsec-configuration-id" />
+                <xml-property name="container" value="ipsec-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="NotificationEvent">
+            <xml-root-element name="notification-event" />
+            <java-attributes>
+                <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
+                <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.onap.org.v11.NotificationEventHeader" />
+                <xml-any-element java-attribute="entity" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NotificationEventHeader">
+            <xml-root-element name="notification-event-header" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" type="java.lang.String" />
+                <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
+                <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
+                <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
+                <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
+                <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
+                <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
+                <xml-element java-attribute="version" name="version" type="java.lang.String" />
+                <xml-element java-attribute="action" name="action" type="java.lang.String" />
+                <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
+                <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
+                <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
+                <xml-element java-attribute="status" name="status" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="AaiInternal">
+            <xml-root-element name="aai-internal" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.onap.org.v11.ReservedPropNames" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.onap.org.v11.EdgePropNames" />
+            </java-attributes>
+        </java-type>
+        <java-type name="ReservedPropNames">
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
+                <xml-property name="uniqueProps" value="aai-unique-key" />
+                <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
+            </xml-properties>
+            <xml-root-element name="reserved-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
+                <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
+                <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
+                <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
+                <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="EdgePropNames">
+            <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
+                <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
+            </xml-properties>
+            <xml-root-element name="edge-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
+                <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
+                <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
+                <xml-element java-attribute="containsOtherV" name="contains-other-v" type="java.lang.String" />
+                <xml-element java-attribute="deleteOtherV" name="delete-other-v" type="java.lang.String" />
+                <xml-element java-attribute="svcinfra" name="SVC-INFRA" type="java.lang.String" />
+                <xml-element java-attribute="preventDelete" name="prevent-delete" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Models">
+            <xml-properties>
+                <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
+            </xml-properties>
+            <xml-root-element name="models" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.onap.org.v11.Model" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Model">
+            <xml-root-element name="model" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
+                <xml-property name="nameProps" value="model-type" />
+                <xml-property name="indexedProps" value="model-invariant-id,model-type" />
+                <xml-property name="uniqueProps" value="model-invariant-id" />
+                <xml-property name="container" value="models" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, 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="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+
+        <java-type name="ModelVers">
+            <xml-root-element name="model-vers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.onap.org.v11.ModelVer" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="ModelVer">
+            <xml-root-element name="model-ver" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
+                <xml-property name="nameProps" value="model-name" />
+                <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
+                <xml-property name="uniqueProps" value="model-version-id" />
+                <xml-property name="container" value="model-vers" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElements">
+            <xml-root-element name="model-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.onap.org.v11.ModelElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElement">
+            <xml-properties>
+                <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
+                <xml-property name="uniqueProps" value="model-element-uuid" />
+                <xml-property name="indexedProps" value="model-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-elements" />
+            </xml-properties>
+            <xml-root-element name="model-element" />
+            <java-attributes>
+                <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="How many of this type of element are required/allowed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
+                </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="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements">
+                    <xml-properties>
+                        <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.onap.org.v11.ModelConstraints">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraints">
+            <xml-root-element name="model-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.onap.org.v11.ModelConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraint">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="model-constraint-uuid" />
+                <xml-property name="indexedProps" value="model-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-constraints" />
+            </xml-properties>
+            <xml-root-element name="model-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
+                <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.onap.org.v11.ConstrainedElementSets" />
+                <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>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSets">
+            <xml-root-element name="constrained-element-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.onap.org.v11.ConstrainedElementSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
+                <xml-property name="indexedProps" value="constrained-element-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="constrained-element-sets" />
+            </xml-properties>
+            <xml-root-element name="constrained-element-set" />
+            <java-attributes>
+                <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.onap.org.v11.ElementChoiceSets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSets">
+            <xml-root-element name="element-choice-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.onap.org.v11.ElementChoiceSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="element-choice-set-uuid" />
+                <xml-property name="indexedProps" value="element-choice-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="element-choice-sets" />
+            </xml-properties>
+            <xml-root-element name="element-choice-set" />
+            <java-attributes>
+                <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueries">
+            <xml-root-element name="named-queries" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQuery">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="nameProps" value="named-query-name" />
+                <xml-property name="uniqueProps" value="named-query-uuid" />
+                <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
+                <xml-property name="container" value="named-queries" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <xml-root-element name="named-query" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
+                    <xml-element-wrapper name="required-input-params" />
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElements">
+            <xml-root-element name="named-query-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.onap.org.v11.NamedQueryElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElement">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="named-query-element-uuid" />
+                <xml-property name="indexedProps" value="named-query-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="named-query-elements" />
+            </xml-properties>
+            <xml-root-element name="named-query-element" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
+                <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.onap.org.v11.RelatedLookups" />
+                <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.onap.org.v11.PropertyConstraints" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookups">
+            <xml-root-element name="related-lookups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.onap.org.v11.RelatedLookup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookup">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="related-lookup-uuid" />
+                <xml-property name="indexedProps" value="related-lookup-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="related-lookups" />
+            </xml-properties>
+            <xml-root-element name="related-lookup" />
+            <java-attributes>
+                <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraints">
+            <xml-root-element name="property-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.onap.org.v11.PropertyConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraint">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="property-constraint-uuid" />
+                <xml-property name="indexedProps" value="property-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="property-constraints" />
+            </xml-properties>
+            <xml-root-element name="property-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelAndNamedQuerySearch">
+            <xml-properties>
+                <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="model-and-named-query-search" />
+            <java-attributes>
+                <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.onap.org.v11.QueryParameters" />
+                <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.onap.org.v11.InstanceFilters" />
+                <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.onap.org.v11.SecondaryFilts" />
+                <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
+                <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="QueryParameters">
+            <xml-properties>
+                <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="query-parameters" />
+            <java-attributes>
+                <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+                <xml-element java-attribute="model" name="model" type="inventory.aai.onap.org.v11.OverloadedModel" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OverloadedModel">
+            <xml-root-element name="overloaded-model" />
+            <xml-properties>
+                <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilters">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="instance-filters" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.onap.org.v11.InstanceFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilter">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
+                <xml-property name="container" value="instance-filters" />
+            </xml-properties>
+            <xml-root-element name="instance-filter" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilts">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filts" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.onap.org.v11.SecondaryFilt" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilt">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filt" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Properties">
+            <xml-properties>
+                <xml-property name="description" value="Property holder for query properties or instance properties" />
+            </xml-properties>
+            <xml-root-element name="properties" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResponseList">
+            <xml-properties>
+                <xml-property name="description" value="Response container for the results of a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="response-list" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItems">
+            <xml-properties>
+                <xml-property name="description" value="Container for inventory items in response list" />
+                <xml-property name="container" value="response-list" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-items" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.onap.org.v11.InventoryResponseItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItem">
+            <xml-properties>
+                <xml-property name="description" value="Inventory item for response list" />
+                <xml-property name="container" value="inventory-response-items" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-item" />
+            <java-attributes>
+                <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
+                <xml-any-element java-attribute="item" />
+                <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.onap.org.v11.ExtraProperties" />
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperties">
+            <xml-properties>
+                <xml-property name="description" value="Extra properties for inventory item for response list" />
+            </xml-properties>
+            <xml-root-element name="extra-properties" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.onap.org.v11.ExtraProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperty">
+            <xml-root-element name="extra-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReferences">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="route-table-references" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.onap.org.v11.RouteTableReference" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReference">
+            <xml-root-element name="route-table-reference" />
+            <java-attributes>
+                <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="FQDN entry in the route table." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Openstack route table reference." />
+                <xml-property name="nameProps" value="route-table-reference-fqdn" />
+                <xml-property name="uniqueProps" value="route-table-reference-id" />
+                <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
+                <xml-property name="container" value="route-table-references" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="InstanceGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="instance-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.onap.org.v11.InstanceGroup" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="InstanceGroup">
+            <xml-root-element name="instance-group" />
+            <java-attributes>
+                <xml-element java-attribute="instanceGroupRole" name="instance-group-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the instance group." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model id for this resource or service model." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model version uid for this resource model." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subType" name="sub-type"  type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="General mechanism for grouping instances" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="searchable" value="id,description"/>
+                <xml-property name="indexedProps" value="id,description,type,sub-type" />
+                <xml-property name="container" value="instance-groups" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+
+        <java-type name="SegmentationAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack segmentation assignments" />
+            </xml-properties>
+            <xml-root-element name="segmentation-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.onap.org.v11.SegmentationAssignment" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="SegmentationAssignment">
+            <xml-root-element name="segmentation-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack segmentation assignment." />
+                <xml-property name="indexedProps" value="segmentation-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="segmentation-assignments" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="AllottedResources">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store slices of services being offered" />
+            </xml-properties>
+            <xml-root-element name="allotted-resources" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.onap.org.v11.AllottedResource" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="AllottedResource">
+            <xml-root-element name="allotted-resource" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Link back to more information in the controller" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of allotted resource." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="role" name="role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this resource will be providing." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v11.TunnelXconnects" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
+                <xml-property name="dependentOn" value="service-instance" />
+                <xml-property name="container" value="allotted-resources" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>    
+        
+        <java-type name="TunnelXconnects">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
+            </xml-properties>
+            <xml-root-element name="tunnel-xconnects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.onap.org.v11.TunnelXconnect" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="TunnelXconnect">
+            <xml-root-element name="tunnel-xconnect" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id" />
+                <xml-property name="dependentOn" value="allotted-resource" />
+                <xml-property name="container" value="tunnel-xconnects" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Entitlements">
+            <xml-properties>
+                <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="entitlements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.onap.org.v11.Entitlement" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="Entitlement">
+            <xml-root-element name="entitlement" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of an entitlement resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for entitlement group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="entitlements" />
+            </xml-properties>
+        </java-type>
+        
+        
+        <java-type name="Licenses">
+            <xml-properties>
+                <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="licenses" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.onap.org.v11.License" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="License">
+            <xml-root-element name="license" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of a license resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for license group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="licenses" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Vnf">
+            <xml-root-element name="vnf"/>
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Abstract vnf class" />
+                <xml-property name="indexedProps" value="vnf-id" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="inheritors" value="vce,generic-vnf" />
+                <xml-property name="abstract" value="true" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Zones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of zones" />
+            </xml-properties>
+            <xml-root-element name="zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.onap.org.v11.Zone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Zone">
+            <xml-root-element name="zone" />
+            <java-attributes>
+                <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Code assigned by AIC to the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English name associated with the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Design of zone [Medium/Large?]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Context of zone [production/test]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="status" name="status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a zone." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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="nameProps" value="zone-name" />
+                <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
+                <xml-property name="uniqueProps" value="zone-id" />
+                <xml-property name="container" value="zones" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="RouteTargets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of route target information" />
+            </xml-properties>
+            <xml-root-element name="route-targets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.onap.org.v11.RouteTarget" />
+            </java-attributes>
+        </java-type>
+        <java-type name="RouteTarget">
+            <xml-root-element name="route-target" />
+            <java-attributes>
+                <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this route target" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Route target information" />
+                <xml-property name="container" value="route-targets" />
+                <xml-property name="dependentOn" value="vpn-binding" />
+                <xml-property name="canBeLinked" value="true" />
+            </xml-properties>
+        </java-type>
+                        
+        <java-type name="SriovPfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Physical Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-pfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovPf" name="sriov-pf" type="inventory.aai.onap.org.v11.SriovPf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovPf">
+            <xml-root-element name="sriov-pf" />
+            <java-attributes>
+                <xml-element java-attribute="pfPciId" name="pf-pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier for the sriov-pf" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Physical Function" />
+                <xml-property name="indexedProps" value="pf-pci-id" />
+                <xml-property name="dependentOn" value="p-interface" />
+                <xml-property name="container" value="sriov-pfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="HostRoutes">
+            <xml-root-element name="host-routes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="hostRoute" name="host-route" type="inventory.aai.onap.org.v11.HostRoute" />
+            </java-attributes>
+        </java-type>
+        <java-type name="HostRoute">
+            <xml-root-element name="host-route" />
+            <java-attributes>
+                <xml-element java-attribute="hostRouteId" name="host-route-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="host-route id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routePrefix" name="route-prefix" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="subnet prefix" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHop" name="next-hop" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Could be ip-address, hostname, or service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHopType" name="next-hop-type" type="java.lang.String">
+                    <xml-properties>
+                        <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="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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="host-route-id" />
+                <xml-property name="dependentOn" value="subnet" />
+                <xml-property name="container" value="host-routes" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VipIpv4AddressList">
+            <xml-root-element name="vip-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv4Address" name="vip-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv4PrefixLength" name="vip-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv4 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VipIpv6AddressList">
+            <xml-root-element name="vip-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv6Address" name="vip-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv6PrefixLength" name="vip-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv6 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+    </java-types>
+</xml-bindings>
\ No newline at end of file
diff --git a/src/test/resources/oxm/aai_oxm_v8.xml b/src/test/resources/oxm/aai_oxm_v8.xml
new file mode 100644 (file)
index 0000000..5c3d450
--- /dev/null
@@ -0,0 +1,6363 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright Â© 2017 AT&T Intellectual Property. All rights reserved.
+    ================================================================================
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+    ============LICENSE_END=========================================================
+
+    ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+-->
+<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.onap.org.v11" xml-mapping-metadata-complete="true">
+    <xml-schema element-form-default="QUALIFIED">
+        <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v11" />
+    </xml-schema>
+    <java-types>
+        <java-type name="Inventory">
+            <xml-root-element name="inventory" />
+            <java-attributes>
+                <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" />
+                <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" />
+                <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" />
+                <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" />
+                <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" />
+                <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" />
+                <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" />
+                <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.onap.org.v11.AaiInternal" />
+                <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.onap.org.v11.Nodes"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Nodes">
+            <xml-root-element name="nodes" />
+        </java-type>
+        <java-type name="Search">
+            <xml-root-element name="search" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.onap.org.v11.EdgeTagQueryResult" />
+                <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.onap.org.v11.EdgeTagQueryRequest" />
+                <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.onap.org.v11.SearchResults" />
+                <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.onap.org.v11.SdnZoneResponse" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryResult">
+            <xml-root-element name="edge-tag-query-result" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="TaggedInventoryItemList">
+            <xml-root-element name="tagged-inventory-item-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.onap.org.v11.InventoryItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItem">
+            <xml-root-element name="inventory-item" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
+                <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.onap.org.v11.InventoryItemData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItemData">
+            <xml-root-element name="inventory-item-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryRequest">
+            <xml-root-element name="edge-tag-query-request" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
+                <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
+                <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.onap.org.v11.StartNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.onap.org.v11.IncludeNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.onap.org.v11.SecondaryFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="StartNodeFilter">
+            <xml-root-element name="start-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IncludeNodeFilter">
+            <xml-root-element name="include-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SecondaryFilter">
+            <xml-root-element name="secondary-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SearchResults">
+            <xml-root-element name="search-results" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.onap.org.v11.ResultData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResultData">
+            <xml-root-element name="result-data" />
+            <java-attributes>
+                <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The URL to the specific resource" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SdnZoneResponse">
+            <xml-root-element name="sdn-zone-response" />
+            <java-attributes>
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.onap.org.v11.AzAndDvsSwitches" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AzAndDvsSwitches">
+            <xml-root-element name="az-and-dvs-switches" />
+            <java-attributes>
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Actions">
+            <xml-properties>
+                <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
+            </xml-properties>
+            <xml-root-element name="actions" />
+            <java-attributes>
+                <xml-element java-attribute="update" name="update" type="inventory.aai.onap.org.v11.Update" />
+                <xml-element java-attribute="notify" name="notify" type="inventory.aai.onap.org.v11.Notify" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Update">
+            <xml-properties>
+                <xml-property name="description" value="Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team." />
+            </xml-properties>
+            <xml-root-element name="update" />
+            <java-attributes>
+                <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.onap.org.v11.UpdateNodeKey" />
+                <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.onap.org.v11.Action" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Action">
+            <xml-root-element name="action" />
+            <java-attributes>
+                <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.onap.org.v11.ActionData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ActionData">
+            <xml-root-element name="action-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="UpdateNodeKey">
+            <xml-root-element name="update-node-key" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Notify">
+            <xml-root-element name="notify" />
+            <java-attributes>
+                <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
+                <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
+                <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.onap.org.v11.KeyData" />
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="KeyData">
+            <xml-root-element name="key-data" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExternalSystem">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for external system." />
+            </xml-properties>
+            <xml-root-element name="external-system" />
+            <java-attributes>
+                <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" />
+                <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" />
+                <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EsrEmsList">
+            <xml-root-element name="esr-ems-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrEms">
+            <xml-root-element name="esr-ems" />
+            <java-attributes>
+                <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of EMS." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist EMS address information used by EMS driver." />
+                <xml-property name="indexedProps" value="ems-id" />
+                <xml-property name="searchable" value="ems-id" />
+                <xml-property name="container" value="esr-ems-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfmList">
+            <xml-root-element name="esr-vnfm-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfm">
+            <xml-root-element name="esr-vnfm" />
+            <java-attributes>
+                <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VNFM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indecate the VIM to deploy VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="certificate url of VNFM." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist VNFM address information used by VF-C." />
+                <xml-property name="indexedProps" value="vnfm-id" />
+                <xml-property name="searchable" value="vnfm-id" />
+                <xml-property name="container" value="esr-vnfm-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdncList">
+            <xml-root-element name="esr-thirdparty-sdnc-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdnc">
+            <xml-root-element name="esr-thirdparty-sdnc" />
+            <java-attributes>
+                <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of SDNC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="location" name="location" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="productName" name="product-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access SDNC server." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." />
+                <xml-property name="indexedProps" value="sdnc-id" />
+                <xml-property name="searchable" value="sdnc-id" />
+                <xml-property name="container" value="esr-thirdparty-sdnc-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfoList">
+            <xml-root-element name="esr-system-info-list" />
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level external system auth info." />
+            </xml-properties>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfo">
+            <xml-root-element name="esr-system-info" />
+            <java-attributes>
+                <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of esr system info." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemName" name="system-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of external system." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vendor" name="vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vendor of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="version" name="version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="version of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="url used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="username used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="password" name="password" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access external systems." />
+                    </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="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of third party SDNC, for example netconf/snmp." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ca file content if enabled ssl on auth-url." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether to verify VIM's certificate." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service IP of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="port" name="port" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service port of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="domain info for authentication." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="default tenant of VIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="ftp passive mode or not." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="resource or performance data file path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemStatus" name="system-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the status of external system." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist common address information of external systems." />
+                <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="container" value="esr-system-info-list" />
+                <xml-property name="dependentOn" value="cloud-region,esr-ems,esr-vnfm,esr-thirdparty-sdnc" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudInfrastructure">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for cloud infrastructure." />
+            </xml-properties>
+            <xml-root-element name="cloud-infrastructure" />
+            <java-attributes>
+                <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.onap.org.v11.Complexes" />
+                <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.onap.org.v11.CloudRegions" />
+                <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.onap.org.v11.NetworkProfiles" />
+                <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.onap.org.v11.Pservers" />
+                <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.onap.org.v11.VirtualDataCenters" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CloudRegions">
+            <xml-root-element name="cloud-regions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.onap.org.v11.CloudRegion" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudRegion">
+            <xml-root-element name="cloud-region" />
+            <java-attributes>
+                <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudExtraInfo" name="cloud-extra-info" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudEpaCaps" name="cloud-epa-caps" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MultiVIM will discover and expose EPA capabilities." />
+                    </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="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v11.VolumeGroups" />
+                <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v11.Tenants" />
+                <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v11.Flavors" />
+                <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v11.GroupAssignments" />
+                <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v11.Snapshots" />
+                <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v11.Images" />
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v11.VipIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v11.VipIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." />
+                <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
+                <xml-property name="nameProps" value="owner-defined-type" />
+                <xml-property name="container" value="cloud-regions" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VolumeGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level storage." />
+            </xml-properties>
+            <xml-root-element name="volume-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.onap.org.v11.VolumeGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VolumeGroup">
+            <xml-root-element name="volume-group" />
+            <java-attributes>
+                <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of volume-group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the volume group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persistent block-level storage." />
+                <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
+                <xml-property name="searchable" value="volume-group-id,volume-group-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="volume-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RelationshipList">
+            <xml-root-element name="relationship-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.onap.org.v11.Relationship" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Relationship">
+            <xml-root-element name="relationship" />
+            <java-attributes>
+                <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to the object in A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.onap.org.v11.RelationshipData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.onap.org.v11.RelatedToProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedToProperty">
+            <xml-root-element name="related-to-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Key part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelationshipData">
+            <xml-root-element name="relationship-data" />
+            <java-attributes>
+                <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value of the attribute." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Complexes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+            </xml-properties>
+            <xml-root-element name="complexes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.onap.org.v11.Complex" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Complex">
+            <xml-root-element name="complex" />
+            <java-attributes>
+                <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gamma complex name for LCP instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </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="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type, e.g., central office, data center." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
+                <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
+                <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
+                <xml-element java-attribute="state" name="state" type="java.lang.String" />
+                <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
+                <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
+                <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
+                <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
+                <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
+                <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
+                <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
+                <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.onap.org.v11.CtagPools" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+                <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
+                <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
+                <xml-property name="uniqueProps" value="physical-location-id" />
+                <xml-property name="container" value="complexes" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CtagPools">
+            <xml-root-element name="ctag-pools" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.onap.org.v11.CtagPool" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagPool">
+            <xml-root-element name="ctag-pool" />
+            <java-attributes>
+                <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="The Target provider edge router" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes what the intended purpose of this pool is." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Comma separated list of ctags" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="complex" />
+                <xml-property name="container" value="ctag-pools" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenants">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack tenants." />
+            </xml-properties>
+            <xml-root-element name="tenants" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.onap.org.v11.Tenant" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenant">
+            <xml-root-element name="tenant" />
+            <java-attributes>
+                <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id relative to the cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Readable name of tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantContext" name="tenant-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the tenant context." />
+                    </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="vservers" name="vservers" type="inventory.aai.onap.org.v11.Vservers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack tenant" />
+                <xml-property name="nameProps" value="tenant-name" />
+                <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
+                <xml-property name="searchable" value="tenant-id,tenant-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="tenants" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
+            </xml-properties>
+            <xml-root-element name="vservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.onap.org.v11.Vserver" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vserver">
+            <xml-root-element name="vserver" />
+            <java-attributes>
+                <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternative name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverSelflink" name="vserver-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 default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
+                    </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="volumes" name="volumes" type="inventory.aai.onap.org.v11.Volumes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
+                <xml-property name="nameProps" value="vserver-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
+                <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
+                <xml-property name="dependentOn" value="tenant" />
+                <xml-property name="container" value="vservers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical interfaces." />
+            </xml-properties>
+            <xml-root-element name="l-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.onap.org.v11.LInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LInterface">
+            <xml-root-element name="l-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name given to the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC address for the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="allowedAddressPairs" name="allowed-address-pairs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Freeform field for storing an ip address, list of ip addresses or a subnet block." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.onap.org.v11.Vlans" />
+                <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.onap.org.v11.SriovVfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </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" />
+                <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface" />
+                <xml-property name="container" value="l-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SriovVfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-vfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.onap.org.v11.SriovVf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovVf">
+            <xml-root-element name="sriov-vf" />
+            <java-attributes>
+                <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option is used to set the link status.  Valid values as of 1607 are on, off, and auto." />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
+                <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="sriov-vfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv4AddressList">
+            <xml-root-element name="l3-interface-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vlans">
+            <xml-root-element name="vlans" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.onap.org.v11.Vlan" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vlan">
+            <xml-root-element name="vlan" />
+            <java-attributes>
+                <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String that identifies the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
+                    </xml-properties>
+                </xml-element>                  
+                <xml-element java-attribute="vpnKey" name="vpn-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan" />
+                <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-key" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="vlans" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv6AddressList">
+            <xml-root-element name="l3-interface-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Volumes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
+            </xml-properties>
+            <xml-root-element name="volumes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.onap.org.v11.Volume" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Volume">
+            <xml-root-element name="volume" />
+            <java-attributes>
+                <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeSelflink" name="volume-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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Ephemeral Block storage volume." />
+                <xml-property name="indexedProps" value="volume-id" />
+                <xml-property name="dependentOn" value="vserver" />
+                <xml-property name="container" value="volumes" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Flavors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack flavors." />
+            </xml-properties>
+            <xml-root-element name="flavors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.onap.org.v11.Flavor" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Flavor">
+            <xml-root-element name="flavor" />
+            <java-attributes>
+                <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of CPUs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of memory" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of ephemeral disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="amount of swap space allocation" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSelflink" name="flavor-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="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack flavor." />
+                <xml-property name="nameProps" value="flavor-name" />
+                <xml-property name="indexedProps" value="flavor-name,flavor-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="flavors" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Snapshots">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack snapshots" />
+            </xml-properties>
+            <xml-root-element name="snapshots" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.onap.org.v11.Snapshot" />
+            </java-attributes>      
+        </java-type>
+        
+        <java-type name="Snapshot">
+            <xml-root-element name="snapshot" />
+            <java-attributes>
+                <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" 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="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack snapshot" />
+                <xml-property name="nameProps" value="snapshot-name" />
+                <xml-property name="uniqueProps" value="snapshot-id" />
+                <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="snapshots" />
+            </xml-properties>   
+        </java-type>
+        
+        <java-type name="GroupAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack group assignments" />
+            </xml-properties>
+            <xml-root-element name="group-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.onap.org.v11.GroupAssignment" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="GroupAssignment">
+            <xml-root-element name="group-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group type - the type of group this instance refers to" />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name - name assigned to the group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group description - description of the group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
+                <xml-property name="nameProps" value="group-name" />
+                <xml-property name="indexedProps" value="group-id,group-type,group-name" />
+                <xml-property name="searchable" value="group-id,group-name"/>
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="group-assignments" />
+            </xml-properties>
+        </java-type>            
+
+        <java-type name="Images">
+            <xml-properties>
+                <xml-property name="description" value="Collectio of Openstack images." />
+            </xml-properties>
+            <xml-root-element name="images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.onap.org.v11.Image" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Image">
+            <xml-root-element name="image" />
+            <java-attributes>
+                <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Image id, expected to be unique across cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Image name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageSelflink" name="image-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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack image." />
+                <xml-property name="nameProps" value="image-name" />
+                <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="images" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Metadata">
+            <xml-properties>
+                <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
+            </xml-properties>
+            <xml-root-element name="metadata" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.onap.org.v11.Metadatum" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Metadatum">
+            <xml-root-element name="metadatum" />
+            <java-attributes>
+                <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
+                <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>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Key/value pairs" />
+                <xml-property name="indexedProps" value="metaname" />
+                <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
+                <xml-property name="container" value="metadata" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="DvsSwitches">
+            <xml-properties>
+                <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs." />
+            </xml-properties>
+            <xml-root-element name="dvs-switches" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.onap.org.v11.DvsSwitch" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="DvsSwitch">
+            <xml-root-element name="dvs-switch" />
+            <java-attributes>
+                <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS switch name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL used to reach the vcenter" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
+                <xml-property name="indexedProps" value="vcenter-url,switch-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="dvs-switches" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="NetworkProfiles">
+            <xml-properties>
+                <xml-property name="description" value="Collection of network profiles" />
+            </xml-properties>
+            <xml-root-element name="network-profiles" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.onap.org.v11.NetworkProfile" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NetworkProfile">
+            <xml-root-element name="network-profile" />
+            <java-attributes>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique name of network profile." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted SNMP community string" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
+                <xml-property name="indexedProps" value="nm-profile-name" />
+                <xml-property name="container" value="network-profiles" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of compute hosts." />
+            </xml-properties>
+            <xml-root-element name="pservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.onap.org.v11.Pserver" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pserver">
+            <xml-root-element name="pserver" />
+            <java-attributes>
+                <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value from executing hostname on the compute node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="PTNII name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of cpus" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk size, in GBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="RAM size, in MBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Fully-qualified domain name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverSelflink" name="pserver-selflink" 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="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number, may be queried" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="internet topology of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </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="pserverName2" name="pserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="alternative pserver name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="purpose of pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates who owns and or manages the device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostProfile" name="host-profile" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The host profile that defines the configuration of the pserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
+                <xml-property name="nameProps" value="pserver-name2" />
+                <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
+                <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
+                <xml-property name="container" value="pservers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical interfaces." />
+            </xml-properties>
+            <xml-root-element name="p-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.onap.org.v11.PInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PInterface">
+            <xml-root-element name="p-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the physical interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nature of the services and connectivity on this port." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the physical properties of the interface." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macAddress" name="mac-addresss" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC Address of the p-interface." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="inventory status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="sriovPfs" name="sriov-pfs" type="inventory.aai.onap.org.v11.SriovPfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Physical interface (e.g., nic)" />
+                <xml-property name="indexedProps" value="interface-name,prov-status" />
+                <xml-property name="nameProps" value="prov-status" />
+                <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
+                <xml-property name="container" value="p-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LagInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregate interfaces." />
+            </xml-properties>
+            <xml-root-element name="lag-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.onap.org.v11.LagInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagInterface">
+            <xml-root-element name="lag-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the link aggregate interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Link aggregate interface" />
+                <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
+                <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf" />
+                <xml-property name="container" value="lag-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OamNetworks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. " />
+            </xml-properties>
+            <xml-root-element name="oam-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.onap.org.v11.OamNetwork" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OamNetwork">
+            <xml-root-element name="oam-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="cvlan-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="OAM network, to be deprecated shortly.  Do not use for new purposes. " />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="oam-networks" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="AvailabilityZones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of availability zones" />
+            </xml-properties>
+            <xml-root-element name="availability-zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AvailabilityZone">
+            <xml-root-element name="availability-zone" />
+            <java-attributes>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone.  Unique across a cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of hypervisor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="availability-zones" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VirtualDataCenters">
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+            </xml-properties>
+            <xml-root-element name="virtual-data-centers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.onap.org.v11.VirtualDataCenter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VirtualDataCenter">
+            <xml-root-element name="virtual-data-center" />
+            <java-attributes>
+                <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the vdc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the virtual data center" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+                <xml-property name="nameProps" value="vdc-name" />
+                <xml-property name="indexedProps" value="vdc-name,vdc-id" />
+                <xml-property name="container" value="virtual-data-centers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Business">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for business related constructs" />
+            </xml-properties>
+            <xml-root-element name="business" />
+            <java-attributes>
+                <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.onap.org.v11.Connectors" />
+                <xml-element java-attribute="customers" name="customers" type="inventory.aai.onap.org.v11.Customers" />
+                <xml-element java-attribute="linesOfBusiness" name="lines-of-business" type="inventory.aai.onap.org.v11.LinesOfBusiness" />
+                <xml-element java-attribute="owningEntities" name="owning-entities" type="inventory.aai.onap.org.v11.OwningEntities" />
+                <xml-element java-attribute="platforms" name="platforms" type="inventory.aai.onap.org.v11.Platforms" />
+                <xml-element java-attribute="projects" name="projects" type="inventory.aai.onap.org.v11.Projects" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Projects">
+            <xml-properties>
+                <xml-property name="description" value="Collection of projects" />
+            </xml-properties>
+            <xml-root-element name="projects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="project" name="project" type="inventory.aai.onap.org.v11.Project" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Project">
+            <xml-root-element name="project" />
+            <java-attributes>
+                <xml-element java-attribute="projectName" name="project-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the project deploying a service" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes the project" />
+                <xml-property name="indexedProps" value="project-name" />
+                <xml-property name="uniqueProps" value="project-name" />
+                <xml-property name="container" value="projects" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Connectors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+            </xml-properties>
+            <xml-root-element name="connectors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.onap.org.v11.Connector" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Connector">
+            <xml-root-element name="connector" />
+            <java-attributes>
+                <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of resource instance." />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+                <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
+                <xml-property name="container" value="connectors" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
+            </xml-properties>
+            <xml-root-element name="customers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.onap.org.v11.Customer" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customer">
+            <xml-root-element name="customer" />
+            <java-attributes>
+                <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
+                        <xml-property name="defaultValue" value="CUST" />
+                    </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="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.onap.org.v11.ServiceSubscriptions" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
+                <xml-property name="nameProps" value="subscriber-name" />
+                <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
+                <xml-property name="searchable" value="global-customer-id,subscriber-name" />
+                <xml-property name="uniqueProps" value="global-customer-id" />
+                <xml-property name="container" value="customers" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LinesOfBusiness">
+            <xml-properties>
+                <xml-property name="description" value="Collection of lines-of-business" />
+            </xml-properties>
+            <xml-root-element name="lines-of-business" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lineOfBusiness" name="line-of-business" type="inventory.aai.onap.org.v11.LineOfBusiness" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LineOfBusiness">
+            <xml-root-element name="line-of-business" />
+            <java-attributes>
+                <xml-element java-attribute="lineOfBusinessName" name="line-of-business-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the line-of-business (product)" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a line-of-business" />
+                <xml-property name="indexedProps" value="line-of-business-name" />
+                <xml-property name="uniqueProps" value="line-of-business-name" />
+                <xml-property name="container" value="lines-of-business" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OwningEntities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of owning-entities" />
+            </xml-properties>
+            <xml-root-element name="owning-entities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="owningEntity" name="owning-entity" type="inventory.aai.onap.org.v11.OwningEntity" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OwningEntity">
+            <xml-root-element name="owning-entity" />
+            <java-attributes>
+                <xml-element java-attribute="owningEntityId" name="owning-entity-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of an owning entity" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="owningEntityName" name="owning-entity-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Owning entity name" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an owning-entity" />
+                <xml-property name="indexedProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="searchable" value="owning-entity-id" />
+                <xml-property name="uniqueProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="container" value="owning-entities" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Platforms">
+            <xml-properties>
+                <xml-property name="description" value="Collection of platforms" />
+            </xml-properties>
+            <xml-root-element name="platforms" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="platform" name="platform" type="inventory.aai.onap.org.v11.Platform" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Platform">
+            <xml-root-element name="platform" />
+            <java-attributes>
+                <xml-element java-attribute="platformName" name="platform-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the platform" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a platform" />
+                <xml-property name="indexedProps" value="platform-name" />
+                <xml-property name="uniqueProps" value="platform-name" />
+                <xml-property name="container" value="platforms" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceSubscriptions">
+            <xml-properties>
+                <xml-property name="description" value="Collection of objects that group service instances." />
+            </xml-properties>
+            <xml-root-element name="service-subscriptions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.onap.org.v11.ServiceSubscription" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceSubscription">
+            <xml-root-element name="service-subscription" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
+                    </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="serviceInstances" name="service-instances" type="inventory.aai.onap.org.v11.ServiceInstances">
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Object that group service instances." />
+                <xml-property name="indexedProps" value="service-type" />
+                <xml-property name="dependentOn" value="customer" />
+                <xml-property name="container" value="service-subscriptions" />
+                <xml-property name="crossEntityReference" value="service-instance,service-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceInstances">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service instances" />
+            </xml-properties>
+            <xml-root-element name="service-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.onap.org.v11.ServiceInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceInstance">
+            <xml-root-element name="service-instance" />
+            <java-attributes>
+                <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Uniquely identifies this instance of a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store a name assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing the service role." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="createdAt" name="created-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="create time of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="updatedAt" name="updated-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="last update of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="short description for service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <!-- for storing the nsd_id create edge between services -->
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL customers will use to access the vHN Portal." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
+                    </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="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v11.AllottedResources" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Instance of a service" />
+                <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
+                <xml-property name="nameProps" value="service-instance-name" />
+                <xml-property name="searchable" value="service-instance-id,service-instance-name" />
+                <xml-property name="uniqueProps" value="service-instance-id" />
+                <xml-property name="dependentOn" value="service-subscription" />
+                <xml-property name="container" value="service-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceDesignAndCreation">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for objects managed by ASDC" />
+            </xml-properties>
+            <xml-root-element name="service-design-and-creation" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.onap.org.v11.VnfImages" />
+                <xml-element java-attribute="services" name="services" type="inventory.aai.onap.org.v11.Services" />
+                <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.onap.org.v11.ServiceCapabilities" />
+                <xml-element java-attribute="models" name="models" type="inventory.aai.onap.org.v11.Models" />
+                <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.onap.org.v11.NamedQueries" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImages">
+            <xml-properties>
+                <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+            </xml-properties>
+            <xml-root-element name="vnf-images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.onap.org.v11.VnfImage" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImage">
+            <xml-root-element name="vnf-image" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of this asset" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+                <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
+                <xml-property name="uniqueProps" value="vnf-image-uuid" />
+                <xml-property name="container" value="vnf-images" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Services">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC." />
+            </xml-properties>
+            <xml-root-element name="services" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.onap.org.v11.Service" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Service">
+            <xml-root-element name="service" />
+            <java-attributes>
+                <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description of the service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceSelflink" name="service-selflink" 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="serviceVersion" name="service-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services." />
+                <xml-property name="indexedProps" value="service-description,service-id" />
+                <xml-property name="container" value="services" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceCapabilities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service capabilities." />
+            </xml-properties>
+            <xml-root-element name="service-capabilities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.onap.org.v11.ServiceCapability" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceCapability">
+            <xml-root-element name="service-capability" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this." />
+                <xml-property name="indexedProps" value="service-type,vnf-type" />
+                <xml-property name="container" value="service-capabilities" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Network">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for network inventory resources." />
+            </xml-properties>
+            <xml-root-element name="network" />
+            <java-attributes>
+                <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v11.LogicalLinks" />
+                <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.onap.org.v11.SitePairSets" />
+                <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.onap.org.v11.VpnBindings" />
+                <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.onap.org.v11.VplsPes" />
+                <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.onap.org.v11.MulticastConfigurations" />
+                <xml-element java-attribute="vces" name="vces" type="inventory.aai.onap.org.v11.Vces" />
+                <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.onap.org.v11.Vnfcs" />
+                <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.onap.org.v11.L3Networks" />
+                <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v11.NetworkPolicies" />
+                <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.onap.org.v11.GenericVnfs" />
+                <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.onap.org.v11.LagLinks" />
+                <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.onap.org.v11.Newvces" />
+                <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.onap.org.v11.Pnfs" />
+                <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.onap.org.v11.PhysicalLinks" />
+                <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.onap.org.v11.IpsecConfigurations" />
+                <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.onap.org.v11.RouteTableReferences" />
+                <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.onap.org.v11.InstanceGroups" />
+                <xml-element java-attribute="zones" name="zones" type="inventory.aai.onap.org.v11.Zones" />
+                <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v11.Configurations" />
+            </java-attributes>
+        </java-type>
+        <java-type name="Configurations">
+            <xml-properties>
+                <xml-property name="description" value="Collection of configurations" />
+            </xml-properties>
+            <xml-root-element name="configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="configuration" name="configurations" type="inventory.aai.onap.org.v11.Configuration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Configuration">
+            <xml-root-element name="configuration" />
+            <java-attributes>
+                <xml-element java-attribute="configurationId" name="configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID assigned to configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the entity that will manage this feature. Could be an organization or the name of the application as well." />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="configurationName" name="configuration-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationType" name="configuration-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="port-mirroring-configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSubType" name="configuration-sub-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vprobe, pprobe." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSelflink" name="configuration-selflink" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to endpoint where AAI can get more details from SDN-GC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of  the configuration used to customize the resource" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Port Mirror Configuration." />
+                <xml-property name="indexedProps" value="configuration-id,model-invariant-id,model-version-id" />
+                <xml-property name="uniqueProps" value="configuration-id" />
+                <xml-property name="container" value="configurations" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="nameProps" value="configuration-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LogicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical connections" />
+            </xml-properties>
+            <xml-root-element name="logical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.onap.org.v11.LogicalLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LogicalLink">
+            <xml-root-element name="logical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of logical link, e.g., evc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4, v6, or ds for dual stack" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="For example, static or BGP" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of operational status of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of the network use of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Reason for this entity, role it is playing" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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,purpose" />
+                <xml-property name="uniqueProps" value="link-id" />
+                <xml-property name="container" value="logical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairSets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
+            </xml-properties>
+            <xml-root-element name="site-pair-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.onap.org.v11.SitePairSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePairSet">
+            <xml-root-element name="site-pair-set" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of site pair set." />
+                    </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="routingInstances" name="routing-instances" type="inventory.aai.onap.org.v11.RoutingInstances" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
+                <xml-property name="indexedProps" value="site-pair-set-id" />
+                <xml-property name="uniqueProps" value="site-pair-set-id" />
+                <xml-property name="container" value="site-pair-sets" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RoutingInstances">
+            <xml-properties>
+                <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
+            </xml-properties>
+            <xml-root-element name="routing-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.onap.org.v11.RoutingInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RoutingInstance">
+            <xml-root-element name="routing-instance" />
+            <java-attributes>
+                <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of routing instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rpm owner" />
+                    </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="sitePairs" name="site-pairs" type="inventory.aai.onap.org.v11.SitePairs" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="routing-instance-id" />
+                <xml-property name="dependentOn" value="site-pair-set" />
+                <xml-property name="container" value="routing-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairs">
+            <xml-properties>
+                <xml-property name="description" value="probe within a set" />
+            </xml-properties>
+            <xml-root-element name="site-pairs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.onap.org.v11.SitePair" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePair">
+            <xml-root-element name="site-pair" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version, v4, v6" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, 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="classesOfService" name="classes-of-service" type="inventory.aai.onap.org.v11.ClassesOfService" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="site-pair-id" />
+                <xml-property name="uniqueProps" value="site-pair-id" />
+                <xml-property name="dependentOn" value="routing-instance" />
+                <xml-property name="container" value="site-pairs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ClassesOfService">
+            <xml-properties>
+                <xml-property name="description" value="class-of-service of probe" />
+            </xml-properties>
+            <xml-root-element name="classes-of-service" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.onap.org.v11.ClassOfService" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ClassOfService">
+            <xml-root-element name="class-of-service" />
+            <java-attributes>
+                <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of probe" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="cos" />
+                <xml-property name="dependentOn" value="site-pair" />
+                <xml-property name="container" value="classes-of-service" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VpnBindings">
+            <xml-root-element name="vpn-bindings" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.onap.org.v11.VpnBinding" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VpnBinding">
+            <xml-root-element name="vpn-binding" />
+            <java-attributes>
+                <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN Name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnRegion" name="vpn-region" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="region of customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="customerVpnId" name="customer-vpn-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id for this customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
+                    </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="routeTargets" name="route-targets" type="inventory.aai.onap.org.v11.RouteTargets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList">
+                    <xml-properties>
+                        <xml-property name="description" value="l3-networks relate to vpn-bindings" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPN binding" />
+                <xml-property name="nameProps" value="vpn-name,vpn-type" />
+                <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
+                <xml-property name="searchable" value="vpn-id,vpn-name" />
+                <xml-property name="uniqueProps" value="vpn-id" />
+                <xml-property name="container" value="vpn-bindings" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VplsPes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
+            </xml-properties>
+            <xml-root-element name="vpls-pes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.onap.org.v11.VplsPe" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VplsPe">
+            <xml-root-element name="vpls-pe" />
+            <java-attributes>
+                <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for stag to get to VCE" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPLS Provider Edge routers." />
+                <xml-property name="indexedProps" value="prov-status,equipment-name" />
+                <xml-property name="container" value="vpls-pes" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="MulticastConfigurations">
+            <xml-properties>
+                <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
+            </xml-properties>
+            <xml-root-element name="multicast-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.onap.org.v11.MulticastConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="MulticastConfiguration">
+            <xml-root-element name="multicast-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of multicast configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of multicast configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rp type of multicast configuration" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="multicast-configuration-id" />
+                <xml-property name="uniqueProps" value="multicast-configuration-id" />
+                <xml-property name="container" value="multicast-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated." />
+            </xml-properties>
+            <xml-root-element name="vces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.onap.org.v11.Vce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vce">
+            <xml-root-element name="vce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network role being played by this VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router.  Implied length of /64." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  see child relationships" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.onap.org.v11.PortGroups" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="vces" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PortGroups">
+            <xml-root-element name="port-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.onap.org.v11.PortGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PortGroup">
+            <xml-root-element name="port-group" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network name of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </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="portGroupId" name="port-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for port group in vmware" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Likely to duplicate value of neutron network name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.onap.org.v11.CvlanTags" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
+                <xml-property name="nameProps" value="port-group-name" />
+                <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
+                <xml-property name="dependentOn" value="vce" />
+                <xml-property name="container" value="port-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CvlanTags">
+            <xml-root-element name="cvlan-tags" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.onap.org.v11.CvlanTagEntry" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CvlanTagEntry">
+            <xml-root-element name="cvlan-tag-entry" />
+            <java-attributes>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="dependentOn" value="port-group" />
+                <xml-property name="indexedProps" value="cvlan-tag" />
+                <xml-property name="container" value="cvlan-tags" />
+            </xml-properties>
+        </java-type>
+
+
+
+        <java-type name="Vnfcs">
+            <xml-properties>
+                <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
+            </xml-properties>
+            <xml-root-element name="vnfcs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.onap.org.v11.Vnfc" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vnfc">
+            <xml-root-element name="vnfc" />
+            <java-attributes>
+                <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vnfc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcNamingCode" name="nfc-naming-code" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Short code that is used in naming instances of the item being modeled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcFunction" name="nfc-function" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="prov status of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Oam V4 vip address of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group notation of VNFC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                    </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.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vnfc-name,prov-status,nfc-function,nfc-naming-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation,model-invariant-id,model-version-id" />
+                <xml-property name="searchable" value="vnfc-name" />
+                <xml-property name="container" value="vnfcs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3Networks">
+            <xml-root-element name="l3-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.onap.org.v11.L3Network" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="L3Network">
+            <xml-root-element name="l3-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network, governed by some naming convention.." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the network - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role the network plans - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network technology - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Set to true if bound to VPN" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="network role instance" />
+                    </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="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the physical network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v11.Subnets" />
+                <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v11.CtagAssignments" />
+                <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v11.SegmentationAssignments" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" >
+                    <xml-properties>
+                        <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Generic network definition" />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
+                <xml-property name="searchable" value="network-id,network-name" />
+                <xml-property name="uniqueProps" value="network-id" />
+                <xml-property name="container" value="l3-networks" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="NetworkPolicies">
+            <xml-root-element name="network-policies" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.onap.org.v11.NetworkPolicy" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NetworkPolicy">
+            <xml-root-element name="network-policy" />
+            <java-attributes>
+                <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID representing unique key to this instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the policy" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID for the openStack Heat instance" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="nameProps" value="network-policy-fqdn" />
+                <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="uniqueProps" value="network-policy-id" />
+                <xml-property name="container" value="network-policies" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="CtagAssignments">
+            <xml-root-element name="ctag-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.onap.org.v11.CtagAssignment" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagAssignment">
+            <xml-root-element name="ctag-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="id." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vlan-id-inner" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="ctag-assignments" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Subnets">
+            <xml-root-element name="subnets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.onap.org.v11.Subnet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Subnet">
+            <xml-root-element name="subnet" />
+            <java-attributes>
+                <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Subnet ID, should be UUID." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the subnet." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of this subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="gateway ip address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="network start address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="cidr mask" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="dhcp enabled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the start address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the last address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="subnetRole" name="subnet-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the subnet, referenced when assigning IPs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAssignmentDirection" name="ip-assignment-direction" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip address assignment direction of the subnet" />
+                    </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="subnetSequence" name="subnet-sequence" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="sequence of the subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v11.HostRoutes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="subnet-id,subnet-name" />
+                <xml-property name="nameProps" value="subnet-name" />
+                <xml-property name="uniqueProps" value="subnet-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="subnets" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VNFs" />
+            </xml-properties>
+            <xml-root-element name="generic-vnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.onap.org.v11.GenericVnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnf">
+            <xml-root-element name="generic-vnf" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfInstanceId" name="vnf-instance-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf instance id." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfPackageName" name="vnf-package-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value=""/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfDiscriptorName" name="vnf-discriptor-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf discriptor name"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="jobId" name="job-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="job id corresponding to vnf"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 Loopback address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 management address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nshd" name="nshd" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of associated SHD in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nvm" name="nvm" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vms in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nnet" name="nnet" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of network in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </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="summaryStatus" name="summary-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the specific entitlement resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the license assignment group.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the actual license resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="as-number of the VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="represents sub zone of the rr plane" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of NF" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this model will be providing" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="string assigned to this model used for naming purposes" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gateway address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length for oam-address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for S-TAG to get to VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network Management profile of this VNF" />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+                <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.onap.org.v11.VfModules" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="General purpose VNF" />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="generic-vnfs" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+                <xml-property name="containsSuggestibleProps" value="true"/>
+                <xml-property name="suggestionAliases" value="VNFs"/>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VfModules">
+            <xml-properties>
+                <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
+            </xml-properties>
+            <xml-root-element name="vf-modules" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.onap.org.v11.VfModule" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VfModule">
+            <xml-root-element name="vf-module" />
+            <java-attributes>
+                <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vf-module." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vf-module" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the Contrail unique ID for a service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="a deployment unit of VNFCs" />
+                <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
+                <xml-property name="searchable" value="vf-module-id,vf-module-name" />
+                <xml-property name="dependentOn" value="generic-vnf" />
+                <xml-property name="container" value="vf-modules" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="LagLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregation connections" />
+            </xml-properties>
+            <xml-root-element name="lag-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.onap.org.v11.LagLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagLink">
+            <xml-root-element name="lag-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="LAG links can connect lag-interfaces" />
+                <xml-property name="indexedProps" value="link-name" />
+                <xml-property name="container" value="lag-links" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Newvces">
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+            </xml-properties>
+            <xml-root-element name="newvces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.onap.org.v11.Newvce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Newvce">
+            <xml-root-element name="newvce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
+                <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id2" />
+                <xml-property name="container" value="newvces" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Physical Network Functions." />
+            </xml-properties>
+            <xml-root-element name="pnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.onap.org.v11.Pnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnf">
+            <xml-root-element name="pnf" />
+            <java-attributes>
+                <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="source of name2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of pnf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number of the device" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </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="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </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" />
+                <xml-property name="searchable" value="pnf-name" />
+                <xml-property name="uniqueProps" value="pnf-name" />
+                <xml-property name="container" value="pnfs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
+            </xml-properties>
+            <xml-root-element name="physical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.onap.org.v11.PhysicalLink" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLink">
+            <xml-root-element name="physical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit it" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the service Provider on this link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpValue" name="service-provider-bandwidth-up-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Upstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpUnits" name="service-provider-bandwidth-up-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for the upstream BW value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownValue" name="service-provider-bandwidth-down-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Downstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownUnits" name="service-provider-bandwidth-down-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for downstream BW value" />
+                    </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.v11.RelationshipList" />
+            </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="alternateKeys1" value="circuit-id" />
+                <xml-property name="container" value="physical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name,circuit-id" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VigServers">
+            <xml-root-element name="vig-servers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.onap.org.v11.VigServer" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VigServer">
+            <xml-root-element name="vig-server" />
+            <java-attributes>
+                <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v4 IP of the vig server" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v6 IP of the vig server" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
+                <xml-property name="indexedProps" value="vig-address-type" />
+                <xml-property name="dependentOn" value="ipsec-configuration" />
+                <xml-property name="container" value="vig-servers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="IpsecConfigurations">
+            <xml-root-element name="ipsec-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.onap.org.v11.IpsecConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IpsecConfiguration">
+            <xml-root-element name="ipsec-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of this configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network address of shared DMZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="can be 1 or 2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="pre-shared key for the above group name " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Lifetime for IKEv1 SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Life time for IPSec SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="enable PFS or not" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The time between DPD probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.onap.org.v11.VigServers" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
+                <xml-property name="indexedProps" value="ipsec-configuration-id" />
+                <xml-property name="uniqueProps" value="ipsec-configuration-id" />
+                <xml-property name="container" value="ipsec-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="NotificationEvent">
+            <xml-root-element name="notification-event" />
+            <java-attributes>
+                <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
+                <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.onap.org.v11.NotificationEventHeader" />
+                <xml-any-element java-attribute="entity" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NotificationEventHeader">
+            <xml-root-element name="notification-event-header" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" type="java.lang.String" />
+                <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
+                <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
+                <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
+                <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
+                <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
+                <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
+                <xml-element java-attribute="version" name="version" type="java.lang.String" />
+                <xml-element java-attribute="action" name="action" type="java.lang.String" />
+                <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
+                <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
+                <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
+                <xml-element java-attribute="status" name="status" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="AaiInternal">
+            <xml-root-element name="aai-internal" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.onap.org.v11.ReservedPropNames" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.onap.org.v11.EdgePropNames" />
+            </java-attributes>
+        </java-type>
+        <java-type name="ReservedPropNames">
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
+                <xml-property name="uniqueProps" value="aai-unique-key" />
+                <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
+            </xml-properties>
+            <xml-root-element name="reserved-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
+                <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
+                <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
+                <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
+                <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="EdgePropNames">
+            <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
+                <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
+            </xml-properties>
+            <xml-root-element name="edge-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
+                <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
+                <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
+                <xml-element java-attribute="containsOtherV" name="contains-other-v" type="java.lang.String" />
+                <xml-element java-attribute="deleteOtherV" name="delete-other-v" type="java.lang.String" />
+                <xml-element java-attribute="svcinfra" name="SVC-INFRA" type="java.lang.String" />
+                <xml-element java-attribute="preventDelete" name="prevent-delete" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Models">
+            <xml-properties>
+                <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
+            </xml-properties>
+            <xml-root-element name="models" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.onap.org.v11.Model" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Model">
+            <xml-root-element name="model" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
+                <xml-property name="nameProps" value="model-type" />
+                <xml-property name="indexedProps" value="model-invariant-id,model-type" />
+                <xml-property name="uniqueProps" value="model-invariant-id" />
+                <xml-property name="container" value="models" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, 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="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+
+        <java-type name="ModelVers">
+            <xml-root-element name="model-vers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.onap.org.v11.ModelVer" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="ModelVer">
+            <xml-root-element name="model-ver" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
+                <xml-property name="nameProps" value="model-name" />
+                <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
+                <xml-property name="uniqueProps" value="model-version-id" />
+                <xml-property name="container" value="model-vers" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElements">
+            <xml-root-element name="model-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.onap.org.v11.ModelElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElement">
+            <xml-properties>
+                <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
+                <xml-property name="uniqueProps" value="model-element-uuid" />
+                <xml-property name="indexedProps" value="model-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-elements" />
+            </xml-properties>
+            <xml-root-element name="model-element" />
+            <java-attributes>
+                <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="How many of this type of element are required/allowed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
+                </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="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements">
+                    <xml-properties>
+                        <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.onap.org.v11.ModelConstraints">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraints">
+            <xml-root-element name="model-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.onap.org.v11.ModelConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraint">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="model-constraint-uuid" />
+                <xml-property name="indexedProps" value="model-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-constraints" />
+            </xml-properties>
+            <xml-root-element name="model-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
+                <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.onap.org.v11.ConstrainedElementSets" />
+                <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>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSets">
+            <xml-root-element name="constrained-element-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.onap.org.v11.ConstrainedElementSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
+                <xml-property name="indexedProps" value="constrained-element-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="constrained-element-sets" />
+            </xml-properties>
+            <xml-root-element name="constrained-element-set" />
+            <java-attributes>
+                <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.onap.org.v11.ElementChoiceSets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSets">
+            <xml-root-element name="element-choice-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.onap.org.v11.ElementChoiceSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="element-choice-set-uuid" />
+                <xml-property name="indexedProps" value="element-choice-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="element-choice-sets" />
+            </xml-properties>
+            <xml-root-element name="element-choice-set" />
+            <java-attributes>
+                <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueries">
+            <xml-root-element name="named-queries" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQuery">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="nameProps" value="named-query-name" />
+                <xml-property name="uniqueProps" value="named-query-uuid" />
+                <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
+                <xml-property name="container" value="named-queries" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <xml-root-element name="named-query" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
+                    <xml-element-wrapper name="required-input-params" />
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElements">
+            <xml-root-element name="named-query-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.onap.org.v11.NamedQueryElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElement">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="named-query-element-uuid" />
+                <xml-property name="indexedProps" value="named-query-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="named-query-elements" />
+            </xml-properties>
+            <xml-root-element name="named-query-element" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
+                <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.onap.org.v11.RelatedLookups" />
+                <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.onap.org.v11.PropertyConstraints" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookups">
+            <xml-root-element name="related-lookups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.onap.org.v11.RelatedLookup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookup">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="related-lookup-uuid" />
+                <xml-property name="indexedProps" value="related-lookup-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="related-lookups" />
+            </xml-properties>
+            <xml-root-element name="related-lookup" />
+            <java-attributes>
+                <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraints">
+            <xml-root-element name="property-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.onap.org.v11.PropertyConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraint">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="property-constraint-uuid" />
+                <xml-property name="indexedProps" value="property-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="property-constraints" />
+            </xml-properties>
+            <xml-root-element name="property-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelAndNamedQuerySearch">
+            <xml-properties>
+                <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="model-and-named-query-search" />
+            <java-attributes>
+                <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.onap.org.v11.QueryParameters" />
+                <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.onap.org.v11.InstanceFilters" />
+                <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.onap.org.v11.SecondaryFilts" />
+                <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
+                <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="QueryParameters">
+            <xml-properties>
+                <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="query-parameters" />
+            <java-attributes>
+                <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+                <xml-element java-attribute="model" name="model" type="inventory.aai.onap.org.v11.OverloadedModel" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OverloadedModel">
+            <xml-root-element name="overloaded-model" />
+            <xml-properties>
+                <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilters">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="instance-filters" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.onap.org.v11.InstanceFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilter">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
+                <xml-property name="container" value="instance-filters" />
+            </xml-properties>
+            <xml-root-element name="instance-filter" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilts">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filts" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.onap.org.v11.SecondaryFilt" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilt">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filt" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Properties">
+            <xml-properties>
+                <xml-property name="description" value="Property holder for query properties or instance properties" />
+            </xml-properties>
+            <xml-root-element name="properties" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResponseList">
+            <xml-properties>
+                <xml-property name="description" value="Response container for the results of a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="response-list" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItems">
+            <xml-properties>
+                <xml-property name="description" value="Container for inventory items in response list" />
+                <xml-property name="container" value="response-list" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-items" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.onap.org.v11.InventoryResponseItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItem">
+            <xml-properties>
+                <xml-property name="description" value="Inventory item for response list" />
+                <xml-property name="container" value="inventory-response-items" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-item" />
+            <java-attributes>
+                <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
+                <xml-any-element java-attribute="item" />
+                <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.onap.org.v11.ExtraProperties" />
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperties">
+            <xml-properties>
+                <xml-property name="description" value="Extra properties for inventory item for response list" />
+            </xml-properties>
+            <xml-root-element name="extra-properties" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.onap.org.v11.ExtraProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperty">
+            <xml-root-element name="extra-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReferences">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="route-table-references" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.onap.org.v11.RouteTableReference" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReference">
+            <xml-root-element name="route-table-reference" />
+            <java-attributes>
+                <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="FQDN entry in the route table." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Openstack route table reference." />
+                <xml-property name="nameProps" value="route-table-reference-fqdn" />
+                <xml-property name="uniqueProps" value="route-table-reference-id" />
+                <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
+                <xml-property name="container" value="route-table-references" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="InstanceGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="instance-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.onap.org.v11.InstanceGroup" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="InstanceGroup">
+            <xml-root-element name="instance-group" />
+            <java-attributes>
+                <xml-element java-attribute="instanceGroupRole" name="instance-group-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the instance group." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model id for this resource or service model." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model version uid for this resource model." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subType" name="sub-type"  type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="General mechanism for grouping instances" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="searchable" value="id,description"/>
+                <xml-property name="indexedProps" value="id,description,type,sub-type" />
+                <xml-property name="container" value="instance-groups" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+
+        <java-type name="SegmentationAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack segmentation assignments" />
+            </xml-properties>
+            <xml-root-element name="segmentation-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.onap.org.v11.SegmentationAssignment" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="SegmentationAssignment">
+            <xml-root-element name="segmentation-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack segmentation assignment." />
+                <xml-property name="indexedProps" value="segmentation-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="segmentation-assignments" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="AllottedResources">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store slices of services being offered" />
+            </xml-properties>
+            <xml-root-element name="allotted-resources" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.onap.org.v11.AllottedResource" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="AllottedResource">
+            <xml-root-element name="allotted-resource" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Link back to more information in the controller" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of allotted resource." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="role" name="role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this resource will be providing." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v11.TunnelXconnects" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
+                <xml-property name="dependentOn" value="service-instance" />
+                <xml-property name="container" value="allotted-resources" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>    
+        
+        <java-type name="TunnelXconnects">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
+            </xml-properties>
+            <xml-root-element name="tunnel-xconnects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.onap.org.v11.TunnelXconnect" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="TunnelXconnect">
+            <xml-root-element name="tunnel-xconnect" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id" />
+                <xml-property name="dependentOn" value="allotted-resource" />
+                <xml-property name="container" value="tunnel-xconnects" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Entitlements">
+            <xml-properties>
+                <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="entitlements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.onap.org.v11.Entitlement" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="Entitlement">
+            <xml-root-element name="entitlement" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of an entitlement resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for entitlement group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="entitlements" />
+            </xml-properties>
+        </java-type>
+        
+        
+        <java-type name="Licenses">
+            <xml-properties>
+                <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="licenses" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.onap.org.v11.License" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="License">
+            <xml-root-element name="license" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of a license resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for license group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="licenses" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Vnf">
+            <xml-root-element name="vnf"/>
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Abstract vnf class" />
+                <xml-property name="indexedProps" value="vnf-id" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="inheritors" value="vce,generic-vnf" />
+                <xml-property name="abstract" value="true" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Zones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of zones" />
+            </xml-properties>
+            <xml-root-element name="zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.onap.org.v11.Zone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Zone">
+            <xml-root-element name="zone" />
+            <java-attributes>
+                <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Code assigned by AIC to the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English name associated with the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Design of zone [Medium/Large?]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Context of zone [production/test]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="status" name="status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a zone." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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="nameProps" value="zone-name" />
+                <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
+                <xml-property name="uniqueProps" value="zone-id" />
+                <xml-property name="container" value="zones" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="RouteTargets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of route target information" />
+            </xml-properties>
+            <xml-root-element name="route-targets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.onap.org.v11.RouteTarget" />
+            </java-attributes>
+        </java-type>
+        <java-type name="RouteTarget">
+            <xml-root-element name="route-target" />
+            <java-attributes>
+                <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this route target" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Route target information" />
+                <xml-property name="container" value="route-targets" />
+                <xml-property name="dependentOn" value="vpn-binding" />
+                <xml-property name="canBeLinked" value="true" />
+            </xml-properties>
+        </java-type>
+                        
+        <java-type name="SriovPfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Physical Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-pfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovPf" name="sriov-pf" type="inventory.aai.onap.org.v11.SriovPf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovPf">
+            <xml-root-element name="sriov-pf" />
+            <java-attributes>
+                <xml-element java-attribute="pfPciId" name="pf-pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier for the sriov-pf" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Physical Function" />
+                <xml-property name="indexedProps" value="pf-pci-id" />
+                <xml-property name="dependentOn" value="p-interface" />
+                <xml-property name="container" value="sriov-pfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="HostRoutes">
+            <xml-root-element name="host-routes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="hostRoute" name="host-route" type="inventory.aai.onap.org.v11.HostRoute" />
+            </java-attributes>
+        </java-type>
+        <java-type name="HostRoute">
+            <xml-root-element name="host-route" />
+            <java-attributes>
+                <xml-element java-attribute="hostRouteId" name="host-route-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="host-route id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routePrefix" name="route-prefix" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="subnet prefix" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHop" name="next-hop" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Could be ip-address, hostname, or service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHopType" name="next-hop-type" type="java.lang.String">
+                    <xml-properties>
+                        <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="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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="host-route-id" />
+                <xml-property name="dependentOn" value="subnet" />
+                <xml-property name="container" value="host-routes" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VipIpv4AddressList">
+            <xml-root-element name="vip-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv4Address" name="vip-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv4PrefixLength" name="vip-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv4 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VipIpv6AddressList">
+            <xml-root-element name="vip-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv6Address" name="vip-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv6PrefixLength" name="vip-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv6 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+    </java-types>
+</xml-bindings>
\ No newline at end of file
diff --git a/src/test/resources/oxm/aai_oxm_v9.xml b/src/test/resources/oxm/aai_oxm_v9.xml
new file mode 100644 (file)
index 0000000..5c3d450
--- /dev/null
@@ -0,0 +1,6363 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+
+    ============LICENSE_START=======================================================
+    org.onap.aai
+    ================================================================================
+    Copyright Â© 2017 AT&T Intellectual Property. All rights reserved.
+    ================================================================================
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+    ============LICENSE_END=========================================================
+
+    ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+-->
+<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm" package-name="inventory.aai.onap.org.v11" xml-mapping-metadata-complete="true">
+    <xml-schema element-form-default="QUALIFIED">
+        <xml-ns namespace-uri="http://org.openecomp.aai.inventory/v11" />
+    </xml-schema>
+    <java-types>
+        <java-type name="Inventory">
+            <xml-root-element name="inventory" />
+            <java-attributes>
+                <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" />
+                <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" />
+                <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" />
+                <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" />
+                <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" />
+                <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" />
+                <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" />
+                <xml-element java-attribute="aaiInternal" name="aai-internal" type="inventory.aai.onap.org.v11.AaiInternal" />
+                <xml-element java-attribute="nodes" name="nodes" type="inventory.aai.onap.org.v11.Nodes"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Nodes">
+            <xml-root-element name="nodes" />
+        </java-type>
+        <java-type name="Search">
+            <xml-root-element name="search" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTagQueryResult" name="edge-tag-query-result" type="inventory.aai.onap.org.v11.EdgeTagQueryResult" />
+                <xml-element java-attribute="edgeTagQueryRequest" name="edge-tag-query-request" type="inventory.aai.onap.org.v11.EdgeTagQueryRequest" />
+                <xml-element java-attribute="searchResults" name="search-results" type="inventory.aai.onap.org.v11.SearchResults" />
+                <xml-element java-attribute="sdnZoneResponse" name="sdn-zone-response" type="inventory.aai.onap.org.v11.SdnZoneResponse" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryResult">
+            <xml-root-element name="edge-tag-query-result" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="TaggedInventoryItemList">
+            <xml-root-element name="tagged-inventory-item-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItem" name="inventory-item" type="inventory.aai.onap.org.v11.InventoryItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItem">
+            <xml-root-element name="inventory-item" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryItemType" name="inventory-item-type" type="java.lang.String" />
+                <xml-element java-attribute="inventoryItemLink" name="inventory-item-link" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryItemData" name="inventory-item-data" type="inventory.aai.onap.org.v11.InventoryItemData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="taggedInventoryItemList" name="tagged-inventory-item-list" type="inventory.aai.onap.org.v11.TaggedInventoryItemList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryItemData">
+            <xml-root-element name="inventory-item-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EdgeTagQueryRequest">
+            <xml-root-element name="edge-tag-query-request" />
+            <java-attributes>
+                <xml-element java-attribute="edgeTag" name="edge-tag" type="java.lang.String" />
+                <xml-element java-attribute="resultDetail" name="result-detail" type="java.lang.String" />
+                <xml-element java-attribute="startNodeType" name="start-node-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="startNodeFilter" name="start-node-filter" type="inventory.aai.onap.org.v11.StartNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="includeNodeFilter" name="include-node-filter" type="inventory.aai.onap.org.v11.IncludeNodeFilter" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilter" name="secondary-filter" type="inventory.aai.onap.org.v11.SecondaryFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="StartNodeFilter">
+            <xml-root-element name="start-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IncludeNodeFilter">
+            <xml-root-element name="include-node-filter" />
+            <java-attributes>
+                <xml-element java-attribute="includeNodeType" name="include-node-type" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SecondaryFilter">
+            <xml-root-element name="secondary-filter" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="filterType" name="filter-type" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SearchResults">
+            <xml-root-element name="search-results" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="resultData" name="result-data" type="inventory.aai.onap.org.v11.ResultData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResultData">
+            <xml-root-element name="result-data" />
+            <java-attributes>
+                <xml-element java-attribute="resourceType" name="resource-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The specific type of node in the A&amp;AI graph" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceLink" name="resource-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The URL to the specific resource" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SdnZoneResponse">
+            <xml-root-element name="sdn-zone-response" />
+            <java-attributes>
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="azAndDvsSwitches" name="az-and-dvs-switches" type="inventory.aai.onap.org.v11.AzAndDvsSwitches" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AzAndDvsSwitches">
+            <xml-root-element name="az-and-dvs-switches" />
+            <java-attributes>
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Actions">
+            <xml-properties>
+                <xml-property name="description" value="APIs that are more action related than REST (e.g., notify, update)." />
+            </xml-properties>
+            <xml-root-element name="actions" />
+            <java-attributes>
+                <xml-element java-attribute="update" name="update" type="inventory.aai.onap.org.v11.Update" />
+                <xml-element java-attribute="notify" name="notify" type="inventory.aai.onap.org.v11.Notify" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Update">
+            <xml-properties>
+                <xml-property name="description" value="Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team." />
+            </xml-properties>
+            <xml-root-element name="update" />
+            <java-attributes>
+                <xml-element java-attribute="updateNodeType" name="update-node-type" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="updateNodeKey" name="update-node-key" type="inventory.aai.onap.org.v11.UpdateNodeKey" />
+                <xml-element java-attribute="updateNodeUri" name="update-node-uri" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="action" name="action" type="inventory.aai.onap.org.v11.Action" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Action">
+            <xml-root-element name="action" />
+            <java-attributes>
+                <xml-element java-attribute="actionType" name="action-type" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="actionData" name="action-data" type="inventory.aai.onap.org.v11.ActionData" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ActionData">
+            <xml-root-element name="action-data" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="UpdateNodeKey">
+            <xml-root-element name="update-node-key" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Notify">
+            <xml-root-element name="notify" />
+            <java-attributes>
+                <xml-element java-attribute="eventId" name="event-id" required="true" type="java.lang.String" />
+                <xml-element java-attribute="nodeType" name="node-type" type="java.lang.String" />
+                <xml-element java-attribute="eventTrigger" name="event-trigger" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="keyData" name="key-data" type="inventory.aai.onap.org.v11.KeyData" />
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="KeyData">
+            <xml-root-element name="key-data" />
+            <java-attributes>
+                <xml-element java-attribute="keyName" name="key-name" type="java.lang.String" />
+                <xml-element java-attribute="keyValue" name="key-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExternalSystem">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for external system." />
+            </xml-properties>
+            <xml-root-element name="external-system" />
+            <java-attributes>
+                <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" />
+                <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" />
+                <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="EsrEmsList">
+            <xml-root-element name="esr-ems-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrEms">
+            <xml-root-element name="esr-ems" />
+            <java-attributes>
+                <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of EMS." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist EMS address information used by EMS driver." />
+                <xml-property name="indexedProps" value="ems-id" />
+                <xml-property name="searchable" value="ems-id" />
+                <xml-property name="container" value="esr-ems-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfmList">
+            <xml-root-element name="esr-vnfm-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrVnfm">
+            <xml-root-element name="esr-vnfm" />
+            <java-attributes>
+                <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VNFM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indecate the VIM to deploy VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="certificate url of VNFM." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist VNFM address information used by VF-C." />
+                <xml-property name="indexedProps" value="vnfm-id" />
+                <xml-property name="searchable" value="vnfm-id" />
+                <xml-property name="container" value="esr-vnfm-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdncList">
+            <xml-root-element name="esr-thirdparty-sdnc-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrThirdpartySdnc">
+            <xml-root-element name="esr-thirdparty-sdnc" />
+            <java-attributes>
+                <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of SDNC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="location" name="location" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="productName" name="product-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access SDNC server." />
+                    </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." />
+                <xml-property name="indexedProps" value="sdnc-id" />
+                <xml-property name="searchable" value="sdnc-id" />
+                <xml-property name="container" value="esr-thirdparty-sdnc-list" />
+                <xml-property name="namespace" value="external-system" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfoList">
+            <xml-root-element name="esr-system-info-list" />
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level external system auth info." />
+            </xml-properties>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="EsrSystemInfo">
+            <xml-root-element name="esr-system-info" />
+            <java-attributes>
+                <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of esr system info." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemName" name="system-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of external system." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vendor" name="vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vendor of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="version" name="version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="version of external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="url used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="username used to access external systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="password" name="password" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="password used to access external systems." />
+                    </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="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="protocol" name="protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of third party SDNC, for example netconf/snmp." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ca file content if enabled ssl on auth-url." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether to verify VIM's certificate." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service IP of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="port" name="port" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service port of ftp server." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="domain info for authentication." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="default tenant of VIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="ftp passive mode or not." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="resource or performance data file path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="systemStatus" name="system-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the status of external system." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persist common address information of external systems." />
+                <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" />
+                <xml-property name="container" value="esr-system-info-list" />
+                <xml-property name="dependentOn" value="cloud-region,esr-ems,esr-vnfm,esr-thirdparty-sdnc" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudInfrastructure">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for cloud infrastructure." />
+            </xml-properties>
+            <xml-root-element name="cloud-infrastructure" />
+            <java-attributes>
+                <xml-element java-attribute="complexes" name="complexes" type="inventory.aai.onap.org.v11.Complexes" />
+                <xml-element java-attribute="cloudRegions" name="cloud-regions" type="inventory.aai.onap.org.v11.CloudRegions" />
+                <xml-element java-attribute="networkProfiles" name="network-profiles" type="inventory.aai.onap.org.v11.NetworkProfiles" />
+                <xml-element java-attribute="pservers" name="pservers" type="inventory.aai.onap.org.v11.Pservers" />
+                <xml-element java-attribute="virtualDataCenters" name="virtual-data-centers" type="inventory.aai.onap.org.v11.VirtualDataCenters" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CloudRegions">
+            <xml-root-element name="cloud-regions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cloudRegion" name="cloud-region" type="inventory.aai.onap.org.v11.CloudRegion" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CloudRegion">
+            <xml-root-element name="cloud-region" />
+            <java-attributes>
+                <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudExtraInfo" name="cloud-extra-info" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cloudEpaCaps" name="cloud-epa-caps" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MultiVIM will discover and expose EPA capabilities." />
+                    </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="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v11.VolumeGroups" />
+                <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v11.Tenants" />
+                <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v11.Flavors" />
+                <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v11.GroupAssignments" />
+                <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v11.Snapshots" />
+                <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v11.Images" />
+                <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v11.DvsSwitches" />
+                <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" />
+                <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v11.VipIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v11.VipIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." />
+                <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
+                <xml-property name="nameProps" value="owner-defined-type" />
+                <xml-property name="container" value="cloud-regions" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VolumeGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of persistent block-level storage." />
+            </xml-properties>
+            <xml-root-element name="volume-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volumeGroup" name="volume-group" type="inventory.aai.onap.org.v11.VolumeGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VolumeGroup">
+            <xml-root-element name="volume-group" />
+            <java-attributes>
+                <xml-element java-attribute="volumeGroupId" name="volume-group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of volume-group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeGroupName" name="volume-group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the volume group." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this volume-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleModelCustomizationId" name="vf-module-model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="helps relate the volume group to the vf-module whose components will require the volume group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Persistent block-level storage." />
+                <xml-property name="indexedProps" value="volume-group-name,vnf-type,heat-stack-id,volume-group-id" />
+                <xml-property name="searchable" value="volume-group-id,volume-group-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="volume-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RelationshipList">
+            <xml-root-element name="relationship-list" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationship" name="relationship" type="inventory.aai.onap.org.v11.Relationship" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Relationship">
+            <xml-root-element name="relationship" />
+            <java-attributes>
+                <xml-element java-attribute="relatedTo" name="related-to" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate type of node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relatedLink" name="related-link" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to the object in A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relationshipData" name="relationship-data" type="inventory.aai.onap.org.v11.RelationshipData" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedToProperty" name="related-to-property" type="inventory.aai.onap.org.v11.RelatedToProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedToProperty">
+            <xml-root-element name="related-to-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyKey" name="property-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Key part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value part of a key/value pair" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelationshipData">
+            <xml-root-element name="relationship-data" />
+            <java-attributes>
+                <xml-element java-attribute="relationshipKey" name="relationship-key" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="A keyword provided by A&amp;AI to indicate an attribute." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipValue" name="relationship-value" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Value of the attribute." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Complexes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+            </xml-properties>
+            <xml-root-element name="complexes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="complex" name="complex" type="inventory.aai.onap.org.v11.Complex" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Complex">
+            <xml-root-element name="complex" />
+            <java-attributes>
+                <xml-element java-attribute="physicalLocationId" name="physical-location-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for physical location, e.g., CLLI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dataCenterCode" name="data-center-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Data center code which can be an alternate way to identify a complex" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gamma complex name for LCP instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL of the keystone identity service" />
+                    </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="physicalLocationType" name="physical-location-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type, e.g., central office, data center." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="street1" name="street1" required="true" type="java.lang.String" />
+                <xml-element java-attribute="street2" name="street2" type="java.lang.String" />
+                <xml-element java-attribute="city" name="city" required="true" type="java.lang.String" />
+                <xml-element java-attribute="state" name="state" type="java.lang.String" />
+                <xml-element java-attribute="postalCode" name="postal-code" required="true" type="java.lang.String" />
+                <xml-element java-attribute="country" name="country" required="true" type="java.lang.String" />
+                <xml-element java-attribute="region" name="region" required="true" type="java.lang.String" />
+                <xml-element java-attribute="latitude" name="latitude" type="java.lang.String" />
+                <xml-element java-attribute="longitude" name="longitude" type="java.lang.String" />
+                <xml-element java-attribute="elevation" name="elevation" type="java.lang.String" />
+                <xml-element java-attribute="lata" name="lata" type="java.lang.String" />
+                <xml-element java-attribute="ctagPools" name="ctag-pools" type="inventory.aai.onap.org.v11.CtagPools" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical locations that can house cloud-regions." />
+                <xml-property name="indexedProps" value="identity-url,data-center-code,complex-name,physical-location-id" />
+                <xml-property name="searchable" value="physical-location-id,data-center-code,complex-name,street1,street2,postal-code" />
+                <xml-property name="uniqueProps" value="physical-location-id" />
+                <xml-property name="container" value="complexes" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CtagPools">
+            <xml-root-element name="ctag-pools" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagPool" name="ctag-pool" type="inventory.aai.onap.org.v11.CtagPool" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagPool">
+            <xml-root-element name="ctag-pool" />
+            <java-attributes>
+                <xml-element java-attribute="targetPe" name="target-pe" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="The Target provider edge router" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagPoolPurpose" name="ctag-pool-purpose" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes what the intended purpose of this pool is." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ctagValues" name="ctag-values" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Comma separated list of ctags" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="A collection of C tags (vlan tags) grouped for a specific purpose." />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="complex" />
+                <xml-property name="container" value="ctag-pools" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenants">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack tenants." />
+            </xml-properties>
+            <xml-root-element name="tenants" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tenant" name="tenant" type="inventory.aai.onap.org.v11.Tenant" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Tenant">
+            <xml-root-element name="tenant" />
+            <java-attributes>
+                <xml-element java-attribute="tenantId" name="tenant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id relative to the cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantName" name="tenant-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Readable name of tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tenantContext" name="tenant-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the tenant context." />
+                    </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="vservers" name="vservers" type="inventory.aai.onap.org.v11.Vservers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack tenant" />
+                <xml-property name="nameProps" value="tenant-name" />
+                <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
+                <xml-property name="searchable" value="tenant-id,tenant-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="tenants" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of virtual Servers, aka virtual machines or VMs." />
+            </xml-properties>
+            <xml-root-element name="vservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vserver" name="vserver" type="inventory.aai.onap.org.v11.Vserver" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vserver">
+            <xml-root-element name="vserver" />
+            <java-attributes>
+                <xml-element java-attribute="vserverId" name="vserver-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier for this vserver relative to its tenant" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName" name="vserver-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverName2" name="vserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternative name of vserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vserverSelflink" name="vserver-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 default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether closed loop function is enabled on this node" />
+                    </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="volumes" name="volumes" type="inventory.aai.onap.org.v11.Volumes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Servers, aka virtual machine or VM." />
+                <xml-property name="nameProps" value="vserver-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,prov-status,vserver-name,vserver-id,in-maint,vserver-name2" />
+                <xml-property name="searchable" value="vserver-id,vserver-name,vserver-name2" />
+                <xml-property name="dependentOn" value="tenant" />
+                <xml-property name="container" value="vservers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical interfaces." />
+            </xml-properties>
+            <xml-root-element name="l-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lInterface" name="l-interface" type="inventory.aai.onap.org.v11.LInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LInterface">
+            <xml-root-element name="l-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name given to the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="E.g., CUSTOMER, UPLINK, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6WanLinkIp" name="v6-wan-link-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macaddr" name="macaddr" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC address for the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether A&amp;AI should be managing this interface of not. Could have value like CUSTOMER" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="isPortMirrored" name="is-port-mirrored" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not port is a mirrored." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="allowedAddressPairs" name="allowed-address-pairs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Freeform field for storing an ip address, list of ip addresses or a subnet block." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlans" name="vlans" type="inventory.aai.onap.org.v11.Vlans" />
+                <xml-element java-attribute="sriovVfs" name="sriov-vfs" type="inventory.aai.onap.org.v11.SriovVfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </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" />
+                <xml-property name="dependentOn" value="generic-vnf,newvce,p-interface,vserver,lag-interface" />
+                <xml-property name="container" value="l-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SriovVfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Virtual Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-vfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovVf" name="sriov-vf" type="inventory.aai.onap.org.v11.SriovVf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovVf">
+            <xml-root-element name="sriov-vf" />
+            <java-attributes>
+                <xml-element java-attribute="pciId" name="pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="PCI ID used to identify the sriov-vf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanFilter" name="vf-vlan-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacFilter" name="vf-mac-filter" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanStrip" name="vf-vlan-strip" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfVlanAntiSpoofCheck" name="vf-vlan-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMacAntiSpoofCheck" name="vf-mac-anti-spoof-check" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfMirrors" name="vf-mirrors" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfBroadcastAllow" name="vf-broadcast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownMulticastAllow" name="vf-unknown-multicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfUnknownUnicastAllow" name="vf-unknown-unicast-allow" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfInsertStag" name="vf-insert-stag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="This option, if set to true, instructs to insert outer tag after traffic comes out of VM." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfLinkStatus" name="vf-link-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This option is used to set the link status.  Valid values as of 1607 are on, off, and auto." />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Virtual Function (not to be confused with virtual network function)" />
+                <xml-property name="indexedProps" value="pci-id,vf-vlan-filter,vf-mac-filter,vf-vlan-strip,neutron-network-id" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="sriov-vfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv4AddressList">
+            <xml-root-element name="l3-interface-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv4Address" name="l3-interface-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv4PrefixLength" name="l3-interface-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vlans">
+            <xml-root-element name="vlans" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vlan" name="vlan" type="inventory.aai.onap.org.v11.Vlan" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vlan">
+            <xml-root-element name="vlan" />
+            <java-attributes>
+                <xml-element java-attribute="vlanInterface" name="vlan-interface" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String that identifies the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanDescription" name="vlan-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to describe (the service associated with) the vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="backdoorConnection" name="backdoor-connection" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Whether customer is going to use this VLAN for backdoor connection to another customer premise device." />
+                    </xml-properties>
+                </xml-element>                  
+                <xml-element java-attribute="vpnKey" name="vpn-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This indicates the customers VPN ID associated with this vlan" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV]." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="isIpUnnumbered" name="is-ip-unnumbered" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Flag indicating the interface uses the IP Unnumbered configuration." />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Definition of vlan" />
+                <xml-property name="indexedProps" value="vlan-interface,vlan-id-inner,vpn-key" />
+                <xml-property name="dependentOn" value="l-interface" />
+                <xml-property name="container" value="vlans" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3InterfaceIpv6AddressList">
+            <xml-root-element name="l3-interface-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="l3InterfaceIpv6Address" name="l3-interface-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="l3InterfaceIpv6PrefixLength" name="l3-interface-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <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" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Volumes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of ephemeral Block storage volumes." />
+            </xml-properties>
+            <xml-root-element name="volumes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="volume" name="volume" type="inventory.aai.onap.org.v11.Volume" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Volume">
+            <xml-root-element name="volume" />
+            <java-attributes>
+                <xml-element java-attribute="volumeId" name="volume-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of block storage volume relative to the vserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="volumeSelflink" name="volume-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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Ephemeral Block storage volume." />
+                <xml-property name="indexedProps" value="volume-id" />
+                <xml-property name="dependentOn" value="vserver" />
+                <xml-property name="container" value="volumes" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Flavors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack flavors." />
+            </xml-properties>
+            <xml-root-element name="flavors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="flavor" name="flavor" type="inventory.aai.onap.org.v11.Flavor" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Flavor">
+            <xml-root-element name="flavor" />
+            <java-attributes>
+                <xml-element java-attribute="flavorId" name="flavor-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorName" name="flavor-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Flavor name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorVcpus" name="flavor-vcpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of CPUs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorRam" name="flavor-ram" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of memory" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorDisk" name="flavor-disk" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorEphemeral" name="flavor-ephemeral" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Amount of ephemeral disk space" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSwap" name="flavor-swap" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="amount of swap space allocation" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorIsPublic" name="flavor-is-public" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="whether flavor is available to all users or private to the tenant it was created in." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="flavorSelflink" name="flavor-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="flavorDisabled" name="flavor-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Boolean as to whether this flavor is no longer enabled" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack flavor." />
+                <xml-property name="nameProps" value="flavor-name" />
+                <xml-property name="indexedProps" value="flavor-name,flavor-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="flavors" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Snapshots">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack snapshots" />
+            </xml-properties>
+            <xml-root-element name="snapshots" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="snapshot" name="snapshot" type="inventory.aai.onap.org.v11.Snapshot" />
+            </java-attributes>      
+        </java-type>
+        
+        <java-type name="Snapshot">
+            <xml-root-element name="snapshot" />
+            <java-attributes>
+                <xml-element java-attribute="snapshotId" name="snapshot-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot id, this is the key UUID assoc associated in glance with the snapshots." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotName" name="snapshot-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Snapshot name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotArchitecture" name="snapshot-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsDistro" name="snapshot-os-distro" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotOsVersion" name="snapshot-os-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="snapshotSelflink" name="snapshot-selflink" 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="prevSnapshotId" name="prev-snapshot-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field contains the UUID of the previous snapshot (if any)." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack snapshot" />
+                <xml-property name="nameProps" value="snapshot-name" />
+                <xml-property name="uniqueProps" value="snapshot-id" />
+                <xml-property name="indexedProps" value="application,snapshot-name,application-vendor,snapshot-id,application-version,prev-snapshot-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="snapshots" />
+            </xml-properties>   
+        </java-type>
+        
+        <java-type name="GroupAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack group assignments" />
+            </xml-properties>
+            <xml-root-element name="group-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="groupAssignment" name="group-assignment" type="inventory.aai.onap.org.v11.GroupAssignment" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="GroupAssignment">
+            <xml-root-element name="group-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="groupId" name="group-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Group id, expected to be unique across cloud-region." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupType" name="group-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group type - the type of group this instance refers to" />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="groupName" name="group-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name - name assigned to the group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupDescription" name="group-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group description - description of the group" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack group-assignment used to store exclusivity groups (EG)." />
+                <xml-property name="nameProps" value="group-name" />
+                <xml-property name="indexedProps" value="group-id,group-type,group-name" />
+                <xml-property name="searchable" value="group-id,group-name"/>
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="group-assignments" />
+            </xml-properties>
+        </java-type>            
+
+        <java-type name="Images">
+            <xml-properties>
+                <xml-property name="description" value="Collectio of Openstack images." />
+            </xml-properties>
+            <xml-root-element name="images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="image" name="image" type="inventory.aai.onap.org.v11.Image" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Image">
+            <xml-root-element name="image" />
+            <java-attributes>
+                <xml-element java-attribute="imageId" name="image-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Image id, expected to be unique across cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageName" name="image-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Image name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageArchitecture" name="image-architecture" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Operating system architecture." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsDistro" name="image-os-distro" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The common name of the operating system distribution in lowercase" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageOsVersion" name="image-os-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The operating system version as specified by the distributor." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="imageSelflink" name="image-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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack image." />
+                <xml-property name="nameProps" value="image-name" />
+                <xml-property name="indexedProps" value="application,image-name,application-vendor,image-id,application-version" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="images" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Metadata">
+            <xml-properties>
+                <xml-property name="description" value="Collection of metadatum (key/value pairs)" />
+            </xml-properties>
+            <xml-root-element name="metadata" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="metadatum" name="metadatum" type="inventory.aai.onap.org.v11.Metadatum" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Metadatum">
+            <xml-root-element name="metadatum" />
+            <java-attributes>
+                <xml-element java-attribute="metaname" name="metaname" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="metaval" name="metaval" required="true" type="java.lang.String" />
+                <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>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Key/value pairs" />
+                <xml-property name="indexedProps" value="metaname" />
+                <xml-property name="dependentOn" value="tenant,image,service-instance,connector,model" />
+                <xml-property name="container" value="metadata" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="DvsSwitches">
+            <xml-properties>
+                <xml-property name="description" value="Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs." />
+            </xml-properties>
+            <xml-root-element name="dvs-switches" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="dvsSwitch" name="dvs-switch" type="inventory.aai.onap.org.v11.DvsSwitch" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="DvsSwitch">
+            <xml-root-element name="dvs-switch" />
+            <java-attributes>
+                <xml-element java-attribute="switchName" name="switch-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS switch name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcenterUrl" name="vcenter-url" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL used to reach the vcenter" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&amp;AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&amp;AI. " />
+                <xml-property name="indexedProps" value="vcenter-url,switch-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="dvs-switches" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="NetworkProfiles">
+            <xml-properties>
+                <xml-property name="description" value="Collection of network profiles" />
+            </xml-properties>
+            <xml-root-element name="network-profiles" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkProfile" name="network-profile" type="inventory.aai.onap.org.v11.NetworkProfile" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NetworkProfile">
+            <xml-root-element name="network-profile" />
+            <java-attributes>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique name of network profile." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="communityString" name="community-string" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted SNMP community string" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Network profile populated by SDN-GP for SNMP" />
+                <xml-property name="indexedProps" value="nm-profile-name" />
+                <xml-property name="container" value="network-profiles" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pservers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of compute hosts." />
+            </xml-properties>
+            <xml-root-element name="pservers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pserver" name="pserver" type="inventory.aai.onap.org.v11.Pserver" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pserver">
+            <xml-root-element name="pserver" />
+            <java-attributes>
+                <xml-element java-attribute="hostname" name="hostname" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value from executing hostname on the compute node." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ptniiEquipName" name="ptnii-equip-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="PTNII name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="numberOfCpus" name="number-of-cpus" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Number of cpus" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="diskInGigabytes" name="disk-in-gigabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Disk size, in GBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ramInMegabytes" name="ram-in-megabytes" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="RAM size, in MBs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="fqdn" name="fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Fully-qualified domain name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverSelflink" name="pserver-selflink" 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="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to configure device, also used for troubleshooting and is IP used for traps generated by device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number, may be queried" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pserverId" name="pserver-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="internetTopology" name="internet-topology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="internet topology of Pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </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="pserverName2" name="pserver-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="alternative pserver name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="purpose of pserver" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates who owns and or manages the device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostProfile" name="host-profile" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The host profile that defines the configuration of the pserver." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver." />
+                <xml-property name="nameProps" value="pserver-name2" />
+                <xml-property name="indexedProps" value="hostname,in-maint,pserver-id,pserver-name2,inv-status" />
+                <xml-property name="searchable" value="hostname,pserver-name2,pserver-id,ipv4-oam-address" />
+                <xml-property name="container" value="pservers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical interfaces." />
+            </xml-properties>
+            <xml-root-element name="p-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pInterface" name="p-interface" type="inventory.aai.onap.org.v11.PInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PInterface">
+            <xml-root-element name="p-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the physical interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portDescription" name="port-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nature of the services and connectivity on this port." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentIdentifier" name="equipment-identifier" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CLEI or other specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role specification for p-interface hardware." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceType" name="interface-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the physical properties of the interface." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="macAddress" name="mac-addresss" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="MAC Address of the p-interface." />
+                    </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 default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="inventory status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="sriovPfs" name="sriov-pfs" type="inventory.aai.onap.org.v11.SriovPfs" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Physical interface (e.g., nic)" />
+                <xml-property name="indexedProps" value="interface-name,prov-status" />
+                <xml-property name="nameProps" value="prov-status" />
+                <xml-property name="dependentOn" value="vpls-pe,pserver,pnf" />
+                <xml-property name="container" value="p-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LagInterfaces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregate interfaces." />
+            </xml-properties>
+            <xml-root-element name="lag-interfaces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagInterface" name="lag-interface" type="inventory.aai.onap.org.v11.LagInterface" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagInterface">
+            <xml-root-element name="lag-interface" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceName" name="interface-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name that identifies the link aggregate interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceDescription" name="interface-description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Human friendly text regarding this interface." />
+                    </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="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceId" name="interface-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" java-attribute="inMaint" name="in-maint" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Link aggregate interface" />
+                <xml-property name="indexedProps" value="interface-name,interface-id,interface-role" />
+                <xml-property name="dependentOn" value="generic-vnf,pserver,vpls-pe,pnf" />
+                <xml-property name="container" value="lag-interfaces" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OamNetworks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. " />
+            </xml-properties>
+            <xml-root-element name="oam-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="oamNetwork" name="oam-network" type="inventory.aai.onap.org.v11.OamNetwork" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OamNetwork">
+            <xml-root-element name="oam-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkUuid" name="network-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the network. Unique across a cloud-region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="cvlan-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for VNF firewall rule so customer cannot send customer traffic over this oam network" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="OAM network, to be deprecated shortly.  Do not use for new purposes. " />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="cvlan-tag,network-uuid,network-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="oam-networks" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="AvailabilityZones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of availability zones" />
+            </xml-properties>
+            <xml-root-element name="availability-zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="availabilityZone" name="availability-zone" type="inventory.aai.onap.org.v11.AvailabilityZone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="AvailabilityZone">
+            <xml-root-element name="availability-zone" />
+            <java-attributes>
+                <xml-element java-attribute="availabilityZoneName" name="availability-zone-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the availability zone.  Unique across a cloud region" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hypervisorType" name="hypervisor-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of hypervisor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Availability zone, a collection of compute hosts/pservers" />
+                <xml-property name="indexedProps" value="availability-zone-name" />
+                <xml-property name="dependentOn" value="cloud-region" />
+                <xml-property name="container" value="availability-zones" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VirtualDataCenters">
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+            </xml-properties>
+            <xml-root-element name="virtual-data-centers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="virtualDataCenter" name="virtual-data-center" type="inventory.aai.onap.org.v11.VirtualDataCenter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VirtualDataCenter">
+            <xml-root-element name="virtual-data-center" />
+            <java-attributes>
+                <xml-element java-attribute="vdcId" name="vdc-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the vdc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdcName" name="vdc-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the virtual data center" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual organization of cloud infrastructure elements in a data center context" />
+                <xml-property name="nameProps" value="vdc-name" />
+                <xml-property name="indexedProps" value="vdc-name,vdc-id" />
+                <xml-property name="container" value="virtual-data-centers" />
+                <xml-property name="namespace" value="cloud-infrastructure" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Business">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for business related constructs" />
+            </xml-properties>
+            <xml-root-element name="business" />
+            <java-attributes>
+                <xml-element java-attribute="connectors" name="connectors" type="inventory.aai.onap.org.v11.Connectors" />
+                <xml-element java-attribute="customers" name="customers" type="inventory.aai.onap.org.v11.Customers" />
+                <xml-element java-attribute="linesOfBusiness" name="lines-of-business" type="inventory.aai.onap.org.v11.LinesOfBusiness" />
+                <xml-element java-attribute="owningEntities" name="owning-entities" type="inventory.aai.onap.org.v11.OwningEntities" />
+                <xml-element java-attribute="platforms" name="platforms" type="inventory.aai.onap.org.v11.Platforms" />
+                <xml-element java-attribute="projects" name="projects" type="inventory.aai.onap.org.v11.Projects" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Projects">
+            <xml-properties>
+                <xml-property name="description" value="Collection of projects" />
+            </xml-properties>
+            <xml-root-element name="projects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="project" name="project" type="inventory.aai.onap.org.v11.Project" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Project">
+            <xml-root-element name="project" />
+            <java-attributes>
+                <xml-element java-attribute="projectName" name="project-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the project deploying a service" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes the project" />
+                <xml-property name="indexedProps" value="project-name" />
+                <xml-property name="uniqueProps" value="project-name" />
+                <xml-property name="container" value="projects" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Connectors">
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+            </xml-properties>
+            <xml-root-element name="connectors" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="connector" name="connector" type="inventory.aai.onap.org.v11.Connector" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Connector">
+            <xml-root-element name="connector" />
+            <java-attributes>
+                <xml-element java-attribute="resourceInstanceId" name="resource-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of resource instance." />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Collection of resource instances used to connect a variety of disparate inventory widgets" />
+                <xml-property name="indexedProps" value="resource-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version" />
+                <xml-property name="container" value="connectors" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customers">
+            <xml-properties>
+                <xml-property name="description" value="Collection of customer identifiers to provide linkage back to BSS information." />
+            </xml-properties>
+            <xml-root-element name="customers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="customer" name="customer" type="inventory.aai.onap.org.v11.Customer" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Customer">
+            <xml-root-element name="customer" />
+            <java-attributes>
+                <xml-element java-attribute="globalCustomerId" name="global-customer-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Global customer id used across ECOMP to uniquely identify customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberName" name="subscriber-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber name, an alternate way to retrieve a customer." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subscriberType" name="subscriber-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Subscriber type, a way to provide VID with only the INFRA customers." />
+                        <xml-property name="defaultValue" value="CUST" />
+                    </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="serviceSubscriptions" name="service-subscriptions" type="inventory.aai.onap.org.v11.ServiceSubscriptions" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="customer identifiers to provide linkage back to BSS information." />
+                <xml-property name="nameProps" value="subscriber-name" />
+                <xml-property name="indexedProps" value="subscriber-name,global-customer-id,subscriber-type" />
+                <xml-property name="searchable" value="global-customer-id,subscriber-name" />
+                <xml-property name="uniqueProps" value="global-customer-id" />
+                <xml-property name="container" value="customers" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LinesOfBusiness">
+            <xml-properties>
+                <xml-property name="description" value="Collection of lines-of-business" />
+            </xml-properties>
+            <xml-root-element name="lines-of-business" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lineOfBusiness" name="line-of-business" type="inventory.aai.onap.org.v11.LineOfBusiness" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LineOfBusiness">
+            <xml-root-element name="line-of-business" />
+            <java-attributes>
+                <xml-element java-attribute="lineOfBusinessName" name="line-of-business-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the line-of-business (product)" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a line-of-business" />
+                <xml-property name="indexedProps" value="line-of-business-name" />
+                <xml-property name="uniqueProps" value="line-of-business-name" />
+                <xml-property name="container" value="lines-of-business" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="OwningEntities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of owning-entities" />
+            </xml-properties>
+            <xml-root-element name="owning-entities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="owningEntity" name="owning-entity" type="inventory.aai.onap.org.v11.OwningEntity" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OwningEntity">
+            <xml-root-element name="owning-entity" />
+            <java-attributes>
+                <xml-element java-attribute="owningEntityId" name="owning-entity-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of an owning entity" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="owningEntityName" name="owning-entity-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Owning entity name" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes an owning-entity" />
+                <xml-property name="indexedProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="searchable" value="owning-entity-id" />
+                <xml-property name="uniqueProps" value="owning-entity-id, owning-entity-name" />
+                <xml-property name="container" value="owning-entities" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Platforms">
+            <xml-properties>
+                <xml-property name="description" value="Collection of platforms" />
+            </xml-properties>
+            <xml-root-element name="platforms" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="platform" name="platform" type="inventory.aai.onap.org.v11.Platform" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Platform">
+            <xml-root-element name="platform" />
+            <java-attributes>
+                <xml-element java-attribute="platformName" name="platform-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the platform" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="describes a platform" />
+                <xml-property name="indexedProps" value="platform-name" />
+                <xml-property name="uniqueProps" value="platform-name" />
+                <xml-property name="container" value="platforms" />
+                <xml-property name="namespace" value="business" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceSubscriptions">
+            <xml-properties>
+                <xml-property name="description" value="Collection of objects that group service instances." />
+            </xml-properties>
+            <xml-root-element name="service-subscriptions" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceSubscription" name="service-subscription" type="inventory.aai.onap.org.v11.ServiceSubscription" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceSubscription">
+            <xml-root-element name="service-subscription" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Value defined by orchestration to identify this service across ECOMP." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tempUbSubAccountId" name="temp-ub-sub-account-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This property will be deleted from A&amp;AI in the near future. Only stop gap solution." />
+                    </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="serviceInstances" name="service-instances" type="inventory.aai.onap.org.v11.ServiceInstances">
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Object that group service instances." />
+                <xml-property name="indexedProps" value="service-type" />
+                <xml-property name="dependentOn" value="customer" />
+                <xml-property name="container" value="service-subscriptions" />
+                <xml-property name="crossEntityReference" value="service-instance,service-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceInstances">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service instances" />
+            </xml-properties>
+            <xml-root-element name="service-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceInstance" name="service-instance" type="inventory.aai.onap.org.v11.ServiceInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceInstance">
+            <xml-root-element name="service-instance" />
+            <java-attributes>
+                <xml-element java-attribute="serviceInstanceId" name="service-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Uniquely identifies this instance of a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceName" name="service-instance-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store a name assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing the service role." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="createdAt" name="created-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="create time of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="updatedAt" name="updated-at" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="last update of Network Service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="short description for service-instance." />
+                    </xml-properties>
+                </xml-element>
+                <!-- for storing the nsd_id create edge between services -->
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthTotal" name="bandwidth-total" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the total bandwidth to be used for this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN1 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the upstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates the downstream bandwidth this service will use on the WAN2 port of the physical device." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vhnPortalUrl" name="vhn-portal-url" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL customers will use to access the vHN Portal." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceInstanceLocationId" name="service-instance-location-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="An identifier that customers assign to the location where this service is being used." />
+                    </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="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v11.AllottedResources" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Instance of a service" />
+                <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
+                <xml-property name="nameProps" value="service-instance-name" />
+                <xml-property name="searchable" value="service-instance-id,service-instance-name" />
+                <xml-property name="uniqueProps" value="service-instance-id" />
+                <xml-property name="dependentOn" value="service-subscription" />
+                <xml-property name="container" value="service-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceDesignAndCreation">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for objects managed by ASDC" />
+            </xml-properties>
+            <xml-root-element name="service-design-and-creation" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImages" name="vnf-images" type="inventory.aai.onap.org.v11.VnfImages" />
+                <xml-element java-attribute="services" name="services" type="inventory.aai.onap.org.v11.Services" />
+                <xml-element java-attribute="serviceCapabilities" name="service-capabilities" type="inventory.aai.onap.org.v11.ServiceCapabilities" />
+                <xml-element java-attribute="models" name="models" type="inventory.aai.onap.org.v11.Models" />
+                <xml-element java-attribute="namedQueries" name="named-queries" type="inventory.aai.onap.org.v11.NamedQueries" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImages">
+            <xml-properties>
+                <xml-property name="description" value="Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+            </xml-properties>
+            <xml-root-element name="vnf-images" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfImage" name="vnf-image" type="inventory.aai.onap.org.v11.VnfImage" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VnfImage">
+            <xml-root-element name="vnf-image" />
+            <java-attributes>
+                <xml-element java-attribute="vnfImageUuid" name="vnf-image-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of this asset" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="application" name="application" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The application that the image instantiates." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVendor" name="application-vendor" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The vendor of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="applicationVersion" name="application-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The version of the application." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" 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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge." />
+                <xml-property name="indexedProps" value="application,vnf-image-uuid,application-vendor,application-version" />
+                <xml-property name="uniqueProps" value="vnf-image-uuid" />
+                <xml-property name="container" value="vnf-images" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Services">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC." />
+            </xml-properties>
+            <xml-root-element name="services" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="service" name="service" type="inventory.aai.onap.org.v11.Service" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Service">
+            <xml-root-element name="service" />
+            <java-attributes>
+                <xml-element java-attribute="serviceId" name="service-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceDescription" name="service-description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Description of the service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceSelflink" name="service-selflink" 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="serviceVersion" name="service-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="service version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services." />
+                <xml-property name="indexedProps" value="service-description,service-id" />
+                <xml-property name="container" value="services" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ServiceCapabilities">
+            <xml-properties>
+                <xml-property name="description" value="Collection of service capabilities." />
+            </xml-properties>
+            <xml-root-element name="service-capabilities" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="serviceCapability" name="service-capability" type="inventory.aai.onap.org.v11.ServiceCapability" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ServiceCapability">
+            <xml-root-element name="service-capability" />
+            <java-attributes>
+                <xml-element java-attribute="serviceType" name="service-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="This gets defined by others to provide a unique ID for the service, we accept what is sent." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this." />
+                <xml-property name="indexedProps" value="service-type,vnf-type" />
+                <xml-property name="container" value="service-capabilities" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Network">
+            <xml-properties>
+                <xml-property name="description" value="Namespace for network inventory resources." />
+            </xml-properties>
+            <xml-root-element name="network" />
+            <java-attributes>
+                <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v11.LogicalLinks" />
+                <xml-element java-attribute="sitePairSets" name="site-pair-sets" type="inventory.aai.onap.org.v11.SitePairSets" />
+                <xml-element java-attribute="vpnBindings" name="vpn-bindings" type="inventory.aai.onap.org.v11.VpnBindings" />
+                <xml-element java-attribute="vplsPes" name="vpls-pes" type="inventory.aai.onap.org.v11.VplsPes" />
+                <xml-element java-attribute="multicastConfigurations" name="multicast-configurations" type="inventory.aai.onap.org.v11.MulticastConfigurations" />
+                <xml-element java-attribute="vces" name="vces" type="inventory.aai.onap.org.v11.Vces" />
+                <xml-element java-attribute="vnfcs" name="vnfcs" type="inventory.aai.onap.org.v11.Vnfcs" />
+                <xml-element java-attribute="l3Networks" name="l3-networks" type="inventory.aai.onap.org.v11.L3Networks" />
+                <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v11.NetworkPolicies" />
+                <xml-element java-attribute="genericVnfs" name="generic-vnfs" type="inventory.aai.onap.org.v11.GenericVnfs" />
+                <xml-element java-attribute="lagLinks" name="lag-links" type="inventory.aai.onap.org.v11.LagLinks" />
+                <xml-element java-attribute="newvces" name="newvces" type="inventory.aai.onap.org.v11.Newvces" />
+                <xml-element java-attribute="pnfs" name="pnfs" type="inventory.aai.onap.org.v11.Pnfs" />
+                <xml-element java-attribute="physicalLinks" name="physical-links" type="inventory.aai.onap.org.v11.PhysicalLinks" />
+                <xml-element java-attribute="ipsecConfigurations" name="ipsec-configurations" type="inventory.aai.onap.org.v11.IpsecConfigurations" />
+                <xml-element java-attribute="routeTableReferences" name="route-table-references" type="inventory.aai.onap.org.v11.RouteTableReferences" />
+                <xml-element java-attribute="instanceGroups" name="instance-groups" type="inventory.aai.onap.org.v11.InstanceGroups" />
+                <xml-element java-attribute="zones" name="zones" type="inventory.aai.onap.org.v11.Zones" />
+                <xml-element java-attribute="configurations" name="configurations" type="inventory.aai.onap.org.v11.Configurations" />
+            </java-attributes>
+        </java-type>
+        <java-type name="Configurations">
+            <xml-properties>
+                <xml-property name="description" value="Collection of configurations" />
+            </xml-properties>
+            <xml-root-element name="configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="configuration" name="configurations" type="inventory.aai.onap.org.v11.Configuration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Configuration">
+            <xml-root-element name="configuration" />
+            <java-attributes>
+                <xml-element java-attribute="configurationId" name="configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID assigned to configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates the entity that will manage this feature. Could be an organization or the name of the application as well." />
+                    </xml-properties>
+                </xml-element>              
+                <xml-element java-attribute="configurationName" name="configuration-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationType" name="configuration-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="port-mirroring-configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSubType" name="configuration-sub-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vprobe, pprobe." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of the configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="configurationSelflink" name="configuration-selflink" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="URL to endpoint where AAI can get more details from SDN-GC." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of  the configuration used to customize the resource" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Port Mirror Configuration." />
+                <xml-property name="indexedProps" value="configuration-id,model-invariant-id,model-version-id" />
+                <xml-property name="uniqueProps" value="configuration-id" />
+                <xml-property name="container" value="configurations" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="nameProps" value="configuration-type" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="LogicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of logical connections" />
+            </xml-properties>
+            <xml-root-element name="logical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="logicalLink" name="logical-link" type="inventory.aai.onap.org.v11.LogicalLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LogicalLink">
+            <xml-root-element name="logical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of logical link, e.g., evc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4, v6, or ds for dual stack" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routingProtocol" name="routing-protocol" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="For example, static or BGP" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of operational status of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkRole" name="link-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indication of the network use of the logical link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkName2" name="link-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alias or alternate name (CLCI or D1 name)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="linkId" name="link-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the logical-link, SDNC generates this." />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="purpose" name="purpose" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Reason for this entity, role it is playing" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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,purpose" />
+                <xml-property name="uniqueProps" value="link-id" />
+                <xml-property name="container" value="logical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairSets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of sets of instances for probes related to generic-vnf" />
+            </xml-properties>
+            <xml-root-element name="site-pair-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePairSet" name="site-pair-set" type="inventory.aai.onap.org.v11.SitePairSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePairSet">
+            <xml-root-element name="site-pair-set" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairSetId" name="site-pair-set-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of site pair set." />
+                    </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="routingInstances" name="routing-instances" type="inventory.aai.onap.org.v11.RoutingInstances" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Set of instances for probes used to measure service level agreements" />
+                <xml-property name="indexedProps" value="site-pair-set-id" />
+                <xml-property name="uniqueProps" value="site-pair-set-id" />
+                <xml-property name="container" value="site-pair-sets" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="RoutingInstances">
+            <xml-properties>
+                <xml-property name="description" value="set of probes related to generic-vnf routing instance" />
+            </xml-properties>
+            <xml-root-element name="routing-instances" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routingInstance" name="routing-instance" type="inventory.aai.onap.org.v11.RoutingInstance" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RoutingInstance">
+            <xml-root-element name="routing-instance" />
+            <java-attributes>
+                <xml-element java-attribute="routingInstanceId" name="routing-instance-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of routing instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpmOwner" name="rpm-owner" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rpm owner" />
+                    </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="sitePairs" name="site-pairs" type="inventory.aai.onap.org.v11.SitePairs" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="routing-instance-id" />
+                <xml-property name="dependentOn" value="site-pair-set" />
+                <xml-property name="container" value="routing-instances" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="SitePairs">
+            <xml-properties>
+                <xml-property name="description" value="probe within a set" />
+            </xml-properties>
+            <xml-root-element name="site-pairs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sitePair" name="site-pair" type="inventory.aai.onap.org.v11.SitePair" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="SitePair">
+            <xml-root-element name="site-pair" />
+            <java-attributes>
+                <xml-element java-attribute="sitePairId" name="site-pair-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceIp" name="source-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationIp" name="destination-ip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version, v4, v6" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationHostname" name="destination-hostname" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Hostname of the destination equipment to which SLAs are measured against." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="destinationEquipType" name="destination-equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The type of destinatination equipment. Could be Router, UCPE, 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="classesOfService" name="classes-of-service" type="inventory.aai.onap.org.v11.ClassesOfService" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="site-pair-id" />
+                <xml-property name="uniqueProps" value="site-pair-id" />
+                <xml-property name="dependentOn" value="routing-instance" />
+                <xml-property name="container" value="site-pairs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="ClassesOfService">
+            <xml-properties>
+                <xml-property name="description" value="class-of-service of probe" />
+            </xml-properties>
+            <xml-root-element name="classes-of-service" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="classOfService" name="class-of-service" type="inventory.aai.onap.org.v11.ClassOfService" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ClassOfService">
+            <xml-root-element name="class-of-service" />
+            <java-attributes>
+                <xml-element java-attribute="cos" name="cos" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeId" name="probe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="probeType" name="probe-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="type of probe" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="cos" />
+                <xml-property name="dependentOn" value="site-pair" />
+                <xml-property name="container" value="classes-of-service" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VpnBindings">
+            <xml-root-element name="vpn-bindings" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vpnBinding" name="vpn-binding" type="inventory.aai.onap.org.v11.VpnBinding" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VpnBinding">
+            <xml-root-element name="vpn-binding" />
+            <java-attributes>
+                <xml-element java-attribute="vpnId" name="vpn-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN ID, globally unique within A&amp;AI" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnName" name="vpn-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="VPN Name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnPlatform" name="vpn-platform" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the platform associated with the VPN example AVPN, Mobility" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnType" name="vpn-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the vpn, should be taken from enumerated/valid values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpnRegion" name="vpn-region" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="region of customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="customerVpnId" name="customer-vpn-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id for this customer vpn" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network." />
+                    </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="routeTargets" name="route-targets" type="inventory.aai.onap.org.v11.RouteTargets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList">
+                    <xml-properties>
+                        <xml-property name="description" value="l3-networks relate to vpn-bindings" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPN binding" />
+                <xml-property name="nameProps" value="vpn-name,vpn-type" />
+                <xml-property name="indexedProps" value="vpn-name,vpn-id,vpn-type" />
+                <xml-property name="searchable" value="vpn-id,vpn-name" />
+                <xml-property name="uniqueProps" value="vpn-id" />
+                <xml-property name="container" value="vpn-bindings" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VplsPes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VPLS Provider Edge routers" />
+            </xml-properties>
+            <xml-root-element name="vpls-pes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vplsPe" name="vpls-pe" type="inventory.aai.onap.org.v11.VplsPe" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VplsPe">
+            <xml-root-element name="vpls-pe" />
+            <java-attributes>
+                <xml-element java-attribute="equipmentName" name="equipment-name" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value, e.g., VPLS-PE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for stag to get to VCE" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="VPLS Provider Edge routers." />
+                <xml-property name="indexedProps" value="prov-status,equipment-name" />
+                <xml-property name="container" value="vpls-pes" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="MulticastConfigurations">
+            <xml-properties>
+                <xml-property name="description" value="multicast configuration of generic-vnf ip-address" />
+            </xml-properties>
+            <xml-root-element name="multicast-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="multicastConfiguration" name="multicast-configuration" type="inventory.aai.onap.org.v11.MulticastConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="MulticastConfiguration">
+            <xml-root-element name="multicast-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="multicastConfigurationId" name="multicast-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of multicast configuration." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="multicastProtocol" name="multicast-protocol" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="protocol of multicast configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="rpType" name="rp-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="rp type of multicast configuration" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="multicast-configuration-id" />
+                <xml-property name="uniqueProps" value="multicast-configuration-id" />
+                <xml-property name="container" value="multicast-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Vces">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated." />
+            </xml-properties>
+            <xml-root-element name="vces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vce" name="vce" type="inventory.aai.onap.org.v11.Vce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vce">
+            <xml-root-element name="vce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network role being played by this VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vpeId" name="vpe-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of VPE connected to this VCE." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="v6VceWanAddress" name="v6-vce-wan-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid v6 IP address for the WAN Link on this router.  Implied length of /64." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  see child relationships" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroups" name="port-groups" type="inventory.aai.onap.org.v11.PortGroups" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,vnf-id,interface-name,regional-resource-zone,vpe-id,prov-status,service-id" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="vces" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PortGroups">
+            <xml-root-element name="port-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="portGroup" name="port-group" type="inventory.aai.onap.org.v11.PortGroup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PortGroup">
+            <xml-root-element name="port-group" />
+            <java-attributes>
+                <xml-element java-attribute="interfaceId" name="interface-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of the interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkName" name="neutron-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network name of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="interfaceRole" name="interface-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this Interface, should use values as defined in ECOMP Yang models." />
+                    </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="portGroupId" name="port-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for port group in vmware" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="portGroupName" name="port-group-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Likely to duplicate value of neutron network name" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="switchName" name="switch-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="DVS or standard switch name (should be non-null for port groups associated with DVS)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cvlanTags" name="cvlan-tags" type="inventory.aai.onap.org.v11.CvlanTags" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Used to capture the network interfaces of this VCE" />
+                <xml-property name="nameProps" value="port-group-name" />
+                <xml-property name="indexedProps" value="port-group-id,heat-stack-id,interface-id,interface-name,switch-name" />
+                <xml-property name="dependentOn" value="vce" />
+                <xml-property name="container" value="port-groups" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="CvlanTags">
+            <xml-root-element name="cvlan-tags" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="cvlanTagEntry" name="cvlan-tag-entry" type="inventory.aai.onap.org.v11.CvlanTagEntry" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CvlanTagEntry">
+            <xml-root-element name="cvlan-tag-entry" />
+            <java-attributes>
+                <xml-element java-attribute="cvlanTag" name="cvlan-tag" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="See mis-na-virtualization-platform.yang" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="dependentOn" value="port-group" />
+                <xml-property name="indexedProps" value="cvlan-tag" />
+                <xml-property name="container" value="cvlan-tags" />
+            </xml-properties>
+        </java-type>
+
+
+
+        <java-type name="Vnfcs">
+            <xml-properties>
+                <xml-property name="description" value="virtual network components associated with a vserver from application controller." />
+            </xml-properties>
+            <xml-root-element name="vnfcs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vnfc" name="vnfc" type="inventory.aai.onap.org.v11.Vnfc" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Vnfc">
+            <xml-root-element name="vnfc" />
+            <java-attributes>
+                <xml-element java-attribute="vnfcName" name="vnfc-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vnfc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcNamingCode" name="nfc-naming-code" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Short code that is used in naming instances of the item being modeled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfcFunction" name="nfc-function" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="prov status of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by APP-C" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4OamVip" name="ipaddress-v4-oam-vip" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Oam V4 vip address of this vnfc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="groupNotation" name="group-notation" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group notation of VNFC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                    </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.v11.RelationshipList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv4AddressList" name="l3-interface-ipv4-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv4AddressList" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3InterfaceIpv6AddressList" name="l3-interface-ipv6-address-list" type="inventory.aai.onap.org.v11.L3InterfaceIpv6AddressList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vnfc-name,prov-status,nfc-function,nfc-naming-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation,model-invariant-id,model-version-id" />
+                <xml-property name="searchable" value="vnfc-name" />
+                <xml-property name="container" value="vnfcs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="L3Networks">
+            <xml-root-element name="l3-networks" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="l3Network" name="l3-network" type="inventory.aai.onap.org.v11.L3Network" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="L3Network">
+            <xml-root-element name="l3-network" />
+            <java-attributes>
+                <xml-element java-attribute="networkId" name="network-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Network ID, should be uuid. Unique across A&amp;AI." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkName" name="network-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the network, governed by some naming convention.." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkType" name="network-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the network - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRole" name="network-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role the network plans - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkTechnology" name="network-technology" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network technology - who defines these values?" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of this Interface" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBoundToVpn" name="is-bound-to-vpn" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Set to true if bound to VPN" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkRoleInstance" name="network-role-instance" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="network role instance" />
+                    </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="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailNetworkFqdn" name="contrail-network-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="physicalNetworkName" name="physical-network-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the physical network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isProviderNetwork" name="is-provider-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a provider network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isSharedNetwork" name="is-shared-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is a shared network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="isExternalNetwork" name="is-external-network" required="true" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="boolean indicatating whether or not network is an external network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v11.Subnets" />
+                <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v11.CtagAssignments" />
+                <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v11.SegmentationAssignments" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" >
+                    <xml-properties>
+                        <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding" />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Generic network definition" />
+                <xml-property name="nameProps" value="network-name" />
+                <xml-property name="indexedProps" value="heat-stack-id,network-uuid,service-id,network-id,network-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-network-fqdn,network-role" />
+                <xml-property name="searchable" value="network-id,network-name" />
+                <xml-property name="uniqueProps" value="network-id" />
+                <xml-property name="container" value="l3-networks" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="NetworkPolicies">
+            <xml-root-element name="network-policies" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="networkPolicy" name="network-policy" type="inventory.aai.onap.org.v11.NetworkPolicy" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NetworkPolicy">
+            <xml-root-element name="network-policy" />
+            <java-attributes>
+                <xml-element java-attribute="networkPolicyId" name="network-policy-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID representing unique key to this instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkPolicyFqdn" name="network-policy-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contrail FQDN for the policy" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID for the openStack Heat instance" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="nameProps" value="network-policy-fqdn" />
+                <xml-property name="indexedProps" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="searchable" value="network-policy-id,network-policy-fqdn" />
+                <xml-property name="uniqueProps" value="network-policy-id" />
+                <xml-property name="container" value="network-policies" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="CtagAssignments">
+            <xml-root-element name="ctag-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ctagAssignment" name="ctag-assignment" type="inventory.aai.onap.org.v11.CtagAssignment" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="CtagAssignment">
+            <xml-root-element name="ctag-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" required="true" type="java.lang.Long" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="id." />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="vlan-id-inner" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="ctag-assignments" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Subnets">
+            <xml-root-element name="subnets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="subnet" name="subnet" type="inventory.aai.onap.org.v11.Subnet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Subnet">
+            <xml-root-element name="subnet" />
+            <java-attributes>
+                <xml-element java-attribute="subnetId" name="subnet-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Subnet ID, should be UUID." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subnetName" name="subnet-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name associated with the subnet." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of this subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="gatewayAddress" name="gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="gateway ip address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="networkStartAddress" name="network-start-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="network start address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cidrMask" name="cidr-mask" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="cidr mask" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="dhcpEnabled" name="dhcp-enabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="dhcp enabled" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpStart" name="dhcp-start" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the start address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dhcpEnd" name="dhcp-end" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the last address reserved for use by dhcp" />
+                    </xml-properties>
+                </xml-element>
+                    <xml-element java-attribute="subnetRole" name="subnet-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the subnet, referenced when assigning IPs" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipAssignmentDirection" name="ip-assignment-direction" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ip address assignment direction of the subnet" />
+                    </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="subnetSequence" name="subnet-sequence" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="sequence of the subnet" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="hostRoutes" name="host-routes" type="inventory.aai.onap.org.v11.HostRoutes" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="subnet-id,subnet-name" />
+                <xml-property name="nameProps" value="subnet-name" />
+                <xml-property name="uniqueProps" value="subnet-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="subnets" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of VNFs" />
+            </xml-properties>
+            <xml-root-element name="generic-vnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="genericVnf" name="generic-vnf" type="inventory.aai.onap.org.v11.GenericVnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="GenericVnf">
+            <xml-root-element name="generic-vnf" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfInstanceId" name="vnf-instance-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf instance id." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceId" name="service-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceZone" name="regional-resource-zone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Regional way of organizing pservers, source of truth should define values" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this resource by Service Assurance systems." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, used by MSO." />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfPackageName" name="vnf-package-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value=""/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfDiscriptorName" name="vnf-discriptor-name" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="vnf discriptor name"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="jobId" name="job-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="job id corresponding to vnf"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmLanV6Address" name="nm-lan-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 Loopback address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementV6Address" name="management-v6-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v6 management address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpu" name="vcpu" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vcpuUnits" name="vcpu-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemory" name="vmemory" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vmemoryUnits" name="vmemory-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdisk" name="vdisk" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vdiskUnits" name="vdisk-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nshd" name="nshd" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of associated SHD in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nvm" name="nvm" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of vms in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nnet" name="nnet" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="number of network in vnf." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isClosedLoopDisabled" name="is-closed-loop-disabled" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether closed loop function is enabled on this node" />
+                    </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="summaryStatus" name="summary-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="encryptedAccessFlag" name="encrypted-access-flag" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether generic-vnf access uses SSH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementAssignmentGroupUuid" name="entitlement-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="entitlementResourceUuid" name="entitlement-resource-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the specific entitlement resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseAssignmentGroupUuid" name="license-assignment-group-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the license assignment group.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKeyUuid" name="license-key-uuid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of the actual license resource.  OBSOLETE -  See child relationships." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="asNumber" name="as-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="as-number of the VNF" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="regionalResourceSubzone" name="regional-resource-subzone" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="represents sub zone of the rr plane" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfType" name="nf-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of NF" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfFunction" name="nf-function" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English description of Network function that the specific VNF deployment is providing" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this model will be providing" />
+                        <xml-property name="suggestibleOnSearch" value="true"/>
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="nfNamingCode" name="nf-naming-code" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="string assigned to this model used for naming purposes" />
+                    </xml-properties>
+                </xml-element>  
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddress" name="ipv4-oam-gateway-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Gateway address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamGatewayAddressPrefixLength" name="ipv4-oam-gateway-address-prefix-length" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length for oam-address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdOuter" name="vlan-id-outer" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Temporary location for S-TAG to get to VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nmProfileName" name="nm-profile-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network Management profile of this VNF" />
+                    </xml-properties>
+                </xml-element>          
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+                <xml-element java-attribute="vfModules" name="vf-modules" type="inventory.aai.onap.org.v11.VfModules" />
+                <xml-element java-attribute="licenses" name="licenses" type="inventory.aai.onap.org.v11.Licenses" />
+                <xml-element java-attribute="entitlements" name="entitlements" type="inventory.aai.onap.org.v11.Entitlements" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="General purpose VNF" />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="is-closed-loop-disabled,vnf-name2,vnf-type,heat-stack-id,in-maint,vnf-name,vnf-id,regional-resource-zone,prov-status,service-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,nf-type,nf-function,nf-naming-code,nf-role" />
+                <xml-property name="searchable" value="vnf-id,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="container" value="generic-vnfs" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="extends" value="vnf" />
+                <xml-property name="containsSuggestibleProps" value="true"/>
+                <xml-property name="suggestionAliases" value="VNFs"/>
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VfModules">
+            <xml-properties>
+                <xml-property name="description" value="Collection of vf-modules, a deployment unit of VNFCs" />
+            </xml-properties>
+            <xml-root-element name="vf-modules" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vfModule" name="vf-module" type="inventory.aai.onap.org.v11.VfModule" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VfModule">
+            <xml-root-element name="vf-module" />
+            <java-attributes>
+                <xml-element java-attribute="vfModuleId" name="vf-module-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of vf-module." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vfModuleName" name="vf-module-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of vf-module" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="orchestration status of this vf-module, mastered by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="isBaseVfModule" name="is-base-vf-module" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="used to indicate whether or not this object is base vf module" />
+                    </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="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelCustomizationId" name="model-customization-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="captures the id of all the configuration used to customize the resource for the service." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelId" name="widget-model-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary widget model. This maps directly to the A&amp;AI widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="widgetModelVersion" name="widget-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC data dictionary version of the widget model.This maps directly to the A&amp;AI version of the widget." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="contrailServiceInstanceFqdn" name="contrail-service-instance-fqdn" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the Contrail unique ID for a service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="moduleIndex" name="module-index" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Path to the controller object." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="a deployment unit of VNFCs" />
+                <xml-property name="indexedProps" value="vf-module-id,vf-module-name,heat-stack-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,contrail-service-instance-fqdn" />
+                <xml-property name="searchable" value="vf-module-id,vf-module-name" />
+                <xml-property name="dependentOn" value="generic-vnf" />
+                <xml-property name="container" value="vf-modules" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="LagLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of link aggregation connections" />
+            </xml-properties>
+            <xml-root-element name="lag-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="lagLink" name="lag-link" type="inventory.aai.onap.org.v11.LagLink" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="LagLink">
+            <xml-root-element name="lag-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Alphabetical concatenation of lag-interface names" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="LAG links can connect lag-interfaces" />
+                <xml-property name="indexedProps" value="link-name" />
+                <xml-property name="container" value="lag-links" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Newvces">
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+            </xml-properties>
+            <xml-root-element name="newvces" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="newvce" name="newvce" type="inventory.aai.onap.org.v11.Newvce" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Newvce">
+            <xml-root-element name="newvce" />
+            <java-attributes>
+                <xml-element java-attribute="vnfId2" name="vnf-id2" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF, can't use same attribute name right now until we promote this new object" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName" name="vnf-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfName2" name="vnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Alternate name of VNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vnfType" name="vnf-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Trigger for operational monitoring of this VNF by BAU Service Assurance systems." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="licenseKey" name="license-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="OBSOLETE -  do not use" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipv4OamAddress" name="ipv4-oam-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address)." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipmentRole" name="equipment-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Client should send valid enumerated value." />
+                    </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="ipv4Loopback0Address" name="ipv4-loopback0-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="v4 Loopback0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status of this VNF, mastered by MSO." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="heatStackId" name="heat-stack-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Heat stack id corresponding to this instance, managed by MSO" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="msoCatalogKey" name="mso-catalog-key" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Corresponds to the SDN-C catalog id used to configure this VCE" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="lInterfaces" name="l-interfaces" type="inventory.aai.onap.org.v11.LInterfaces" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce." />
+                <xml-property name="nameProps" value="vnf-name" />
+                <xml-property name="indexedProps" value="vnf-name,vnf-name2,vnf-type,heat-stack-id,prov-status,vnf-id2" />
+                <xml-property name="searchable" value="vnf-id2,vnf-name,vnf-name2" />
+                <xml-property name="uniqueProps" value="vnf-id2" />
+                <xml-property name="container" value="newvces" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of Physical Network Functions." />
+            </xml-properties>
+            <xml-root-element name="pnfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="pnf" name="pnf" type="inventory.aai.onap.org.v11.Pnf" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="Pnf">
+            <xml-root-element name="pnf" />
+            <java-attributes>
+                <xml-element java-attribute="pnfName" name="pnf-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="unique name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2" name="pnf-name2" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="name of Physical Network Function." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfName2Source" name="pnf-name2-source" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="source of name2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="pnfId" name="pnf-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="id of pnf" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipType" name="equip-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment type.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipVendor" name="equip-vendor" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment vendor.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="equipModel" name="equip-model" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Equipment model.  Source of truth should define valid values." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="identifier of managed by ATT or customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Oam" name="ipaddress-v4-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ipv4-oam-address with new naming convention for IP addresses" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="swVersion" name="sw-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="sw-version is the version of SW for the hosted application on the PNF." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="defaultValue" value="false"/>
+                        <xml-property name="description" value="Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="frameId" name="frame-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ID of the physical frame (relay rack) where pnf is installed." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serialNumber" name="serial-number" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Serial number of the device" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Loopback0" name="ipaddress-v4-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Loopback0" name="ipaddress-v6-loopback-0" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 Loopback 0 address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV4Aim" name="ipaddress-v4-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV4 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Aim" name="ipaddress-v6-aim" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 AIM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipaddressV6Oam" name="ipaddress-v6-oam" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="IPV6 OAM address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="invStatus" name="inv-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CANOPI's inventory status.  Only set with values exactly as defined by CANOPI." />
+                    </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="provStatus" name="prov-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nfRole" name="nf-role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Nf Role is the role performed by this instance in the network." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+                <xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v11.PInterfaces" />
+                <xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v11.LagInterfaces" />
+            </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" />
+                <xml-property name="searchable" value="pnf-name" />
+                <xml-property name="uniqueProps" value="pnf-name" />
+                <xml-property name="container" value="pnfs" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLinks">
+            <xml-properties>
+                <xml-property name="description" value="Collection of physical connections, typically between p-interfaces" />
+            </xml-properties>
+            <xml-root-element name="physical-links" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="physicalLink" name="physical-link" type="inventory.aai.onap.org.v11.PhysicalLink" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="maximumDepth" value="0" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="PhysicalLink">
+            <xml-root-element name="physical-link" />
+            <java-attributes>
+                <xml-element java-attribute="linkName" name="link-name" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedValue" name="speed-value" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the numeric part of the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="speedUnits" name="speed-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Captures the units corresponding to the speed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="circuitId" name="circuit-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Circuit it" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dualMode" name="dual-mode" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Dual access mode (e.g., primary, secondary" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="managementOption" name="management-option" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="To provide information on who manages this circuit. A&amp;AI or 3rd party transport provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderName" name="service-provider-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the service Provider on this link." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpValue" name="service-provider-bandwidth-up-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Upstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthUpUnits" name="service-provider-bandwidth-up-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for the upstream BW value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownValue" name="service-provider-bandwidth-down-value" type="java.lang.Integer">
+                    <xml-properties>
+                        <xml-property name="description" value="Downstream Bandwidth value agreed with the service provider" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="serviceProviderBandwidthDownUnits" name="service-provider-bandwidth-down-units" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Units for downstream BW value" />
+                    </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.v11.RelationshipList" />
+            </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="alternateKeys1" value="circuit-id" />
+                <xml-property name="container" value="physical-links" />
+                <xml-property name="namespace" value="network" />
+                <xml-property name="searchable" value="link-name,circuit-id" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VigServers">
+            <xml-root-element name="vig-servers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="vigServer" name="vig-server" type="inventory.aai.onap.org.v11.VigServer" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="VigServer">
+            <xml-root-element name="vig-server" />
+            <java-attributes>
+                <xml-element java-attribute="vigAddressType" name="vig-address-type" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="indicates whether the VIG is for AVPN or INTERNET" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV4Vig" name="ipaddress-v4-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v4 IP of the vig server" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipaddressV6Vig" name="ipaddress-v6-vig" type="java.lang.String" >
+                    <xml-properties>
+                        <xml-property name="description" value="v6 IP of the vig server" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607" />
+                <xml-property name="indexedProps" value="vig-address-type" />
+                <xml-property name="dependentOn" value="ipsec-configuration" />
+                <xml-property name="container" value="vig-servers" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="IpsecConfigurations">
+            <xml-root-element name="ipsec-configurations" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="ipsecConfiguration" name="ipsec-configuration" type="inventory.aai.onap.org.v11.IpsecConfiguration" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="IpsecConfiguration">
+            <xml-root-element name="ipsec-configuration" />
+            <java-attributes>
+                <xml-element java-attribute="ipsecConfigurationId" name="ipsec-configuration-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="UUID of this configuration" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedVigAddressType" name="requested-vig-address-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicate the type of VIG server like AVPN, INTERNET, BOTH" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedEncryptionStrength" name="requested-encryption-strength" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedDmzType" name="requested-dmz-type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ATT can offer a shared DMZ or a DMZ specific to a customer" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sharedDmzNetworkAddress" name="shared-dmz-network-address" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Network address of shared DMZ" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="requestedCustomerName" name="requested-customer-name" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="If the DMZ is a custom DMZ, this field will indicate the customer information" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikeVersion" name="ike-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="can be 1 or 2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Authentication" name="ikev1-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Contains values like md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1Encryption" name="ikev1-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encyption values like 3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1DhGroup" name="ikev1-dh-group" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmGroupId" name="ikev1-am-group-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Group name defined in VIG for clients using aggressive mode" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1AmPassword" name="ikev1-am-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="pre-shared key for the above group name " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ikev1SaLifetime" name="ikev1-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Lifetime for IKEv1 SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecAuthentication" name="ipsec-authentication" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="md5, sha1, sha256, sha384" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecEncryption" name="ipsec-encryption" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="3des-cbc, des-cbc, aes-128-cbc,?aes-192-cbc, aes-265-cbc" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecSaLifetime" name="ipsec-sa-lifetime" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Life time for IPSec SA" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="ipsecPfs" name="ipsec-pfs" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="enable PFS or not" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserId" name="xauth-userid" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="user ID for xAuth, sm-user,ucpeHostName,nmteHostName" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="xauthUserPassword" name="xauth-user-password" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Encrypted using the Juniper $9$ algorithm" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdInterval" name="dpd-interval" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The time between DPD probe" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="dpdFrequency" name="dpd-frequency" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Maximum number of DPD before claiming the tunnel is down" />
+                    </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.v11.RelationshipList" />
+                <xml-element java-attribute="vigServers" name="vig-servers" type="inventory.aai.onap.org.v11.VigServers" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C" />
+                <xml-property name="indexedProps" value="ipsec-configuration-id" />
+                <xml-property name="uniqueProps" value="ipsec-configuration-id" />
+                <xml-property name="container" value="ipsec-configurations" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+
+
+        <java-type name="NotificationEvent">
+            <xml-root-element name="notification-event" />
+            <java-attributes>
+                <xml-element java-attribute="cambriaPartition" name="cambria.partition" type="java.lang.String" />
+                <xml-element java-attribute="eventHeader" name="event-header" type="inventory.aai.onap.org.v11.NotificationEventHeader" />
+                <xml-any-element java-attribute="entity" />
+            </java-attributes>
+        </java-type>
+        <java-type name="NotificationEventHeader">
+            <xml-root-element name="notification-event-header" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" type="java.lang.String" />
+                <xml-element java-attribute="timestamp" name="timestamp" type="java.lang.String" />
+                <xml-element java-attribute="sourceName" name="source-name" type="java.lang.String" />
+                <xml-element java-attribute="domain" name="domain" type="java.lang.String" />
+                <xml-element java-attribute="sequenceNumber" name="sequence-number" type="java.lang.String" />
+                <xml-element java-attribute="severity" name="severity" type="java.lang.String" />
+                <xml-element java-attribute="eventType" name="event-type" type="java.lang.String" />
+                <xml-element java-attribute="version" name="version" type="java.lang.String" />
+                <xml-element java-attribute="action" name="action" type="java.lang.String" />
+                <xml-element java-attribute="entityType" name="entity-type" type="java.lang.String" />
+                <xml-element java-attribute="topEntityType" name="top-entity-type" type="java.lang.String" />
+                <xml-element java-attribute="entityLink" name="entity-link" type="java.lang.String" />
+                <xml-element java-attribute="status" name="status" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="AaiInternal">
+            <xml-root-element name="aai-internal" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="reservedPropNames" name="reserved-prop-names" type="inventory.aai.onap.org.v11.ReservedPropNames" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="edgePropNames" name="edge-prop-names" type="inventory.aai.onap.org.v11.EdgePropNames" />
+            </java-attributes>
+        </java-type>
+        <java-type name="ReservedPropNames">
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define some reserved properties of a vertex" />
+                <xml-property name="uniqueProps" value="aai-unique-key" />
+                <xml-property name="indexedProps" value="aai-unique-key,source-of-truth,aai-node-type,aai-uri" />
+            </xml-properties>
+            <xml-root-element name="reserved-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="lastModSourceOfTruth" name="last-mod-source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiNodeType" name="aai-node-type" type="java.lang.String" />
+                <xml-element java-attribute="aaiCreatedTs" name="aai-created-ts" type="java.lang.Long" />
+                <xml-element java-attribute="aaiUniqueKey" name="aai-unique-key" type="java.lang.String" />
+                <xml-element java-attribute="aaiLastModTs" name="aai-last-mod-ts" type="java.lang.Long" />
+                <xml-element java-attribute="sourceOfTruth" name="source-of-truth" type="java.lang.String" />
+                <xml-element java-attribute="aaiUri" name="aai-uri" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        <java-type name="EdgePropNames">
+            <!-- NOTE that the names of these properties are not consistent and are in mixed case and hyphen case for now -->
+            <xml-properties>
+                <xml-property name="description" value="Internal map to define the properties of an edge and interpret the map EdgeRules" />
+                <xml-property name="edgeInfo" value="edgeLabel,direction,multiplicityRule,isParent,usesResource,hasDelTarget,SVC-INFRA,SVC-INFRA-REV" />
+            </xml-properties>
+            <xml-root-element name="edge-prop-names" />
+            <java-attributes>
+                <xml-element java-attribute="edgeLabel" name="edgeLabel" type="java.lang.String" />
+                <xml-element java-attribute="direction" name="direction" type="java.lang.String" />
+                <xml-element java-attribute="multiplicityRule" name="multiplicityRule" type="java.lang.String" />
+                <xml-element java-attribute="containsOtherV" name="contains-other-v" type="java.lang.String" />
+                <xml-element java-attribute="deleteOtherV" name="delete-other-v" type="java.lang.String" />
+                <xml-element java-attribute="svcinfra" name="SVC-INFRA" type="java.lang.String" />
+                <xml-element java-attribute="preventDelete" name="prevent-delete" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Models">
+            <xml-properties>
+                <xml-property name="description" value="Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models" />
+            </xml-properties>
+            <xml-root-element name="models" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="model" name="model" type="inventory.aai.onap.org.v11.Model" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Model">
+            <xml-root-element name="model" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version" />
+                <xml-property name="nameProps" value="model-type" />
+                <xml-property name="indexedProps" value="model-invariant-id,model-type" />
+                <xml-property name="uniqueProps" value="model-invariant-id" />
+                <xml-property name="container" value="models" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, 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="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+
+        <java-type name="ModelVers">
+            <xml-root-element name="model-vers" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelVer" name="model-ver" type="inventory.aai.onap.org.v11.ModelVer" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="ModelVer">
+            <xml-root-element name="model-ver" />
+            <xml-properties>
+                <xml-property name="description" value="Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models" />
+                <xml-property name="nameProps" value="model-name" />
+                <xml-property name="indexedProps" value="model-version-id,model-name,model-version" />
+                <xml-property name="uniqueProps" value="model-version-id" />
+                <xml-property name="container" value="model-vers" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v11.Metadata" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElements">
+            <xml-root-element name="model-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelElement" name="model-element" type="inventory.aai.onap.org.v11.ModelElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelElement">
+            <xml-properties>
+                <xml-property name="description" value="Defines how other models combine to make up a higher-level model." />
+                <xml-property name="uniqueProps" value="model-element-uuid" />
+                <xml-property name="indexedProps" value="model-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-elements" />
+            </xml-properties>
+            <xml-root-element name="model-element" />
+            <java-attributes>
+                <xml-element java-attribute="modelElementUuid" name="model-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="newDataDelFlag" name="new-data-del-flag" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicates whether this element was created as part of instantiation from this model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="cardinality" name="cardinality" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="How many of this type of element are required/allowed" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="linkagePoints" name="linkage-points" type="java.lang.String" >
+                </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="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements">
+                    <xml-properties>
+                        <xml-property name="description" value="Defines how other models combine to make up a higher-level model" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelConstraints" name="model-constraints" type="inventory.aai.onap.org.v11.ModelConstraints">
+                    <xml-properties>
+                        <xml-property name="description" value="Describes new constraints on this model element that are not part of that model's definition" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraints">
+            <xml-root-element name="model-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="modelConstraint" name="model-constraint" type="inventory.aai.onap.org.v11.ModelConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelConstraint">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="model-constraint-uuid" />
+                <xml-property name="indexedProps" value="model-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="model-constraints" />
+            </xml-properties>
+            <xml-root-element name="model-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="modelConstraintUuid" name="model-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constrainedElementSetUuidToReplace" name="constrained-element-set-uuid-to-replace" required="true" type="java.lang.String" />
+                <xml-element java-attribute="constrainedElementSets" name="constrained-element-sets" type="inventory.aai.onap.org.v11.ConstrainedElementSets" />
+                <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>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSets">
+            <xml-root-element name="constrained-element-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="constrainedElementSet" name="constrained-element-set" type="inventory.aai.onap.org.v11.ConstrainedElementSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ConstrainedElementSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="constrained-element-set-uuid" />
+                <xml-property name="indexedProps" value="constrained-element-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="constrained-element-sets" />
+            </xml-properties>
+            <xml-root-element name="constrained-element-set" />
+            <java-attributes>
+                <xml-element java-attribute="constrainedElementSetUuid" name="constrained-element-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="checkType" name="check-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="elementChoiceSets" name="element-choice-sets" type="inventory.aai.onap.org.v11.ElementChoiceSets" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSets">
+            <xml-root-element name="element-choice-sets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="elementChoiceSet" name="element-choice-set" type="inventory.aai.onap.org.v11.ElementChoiceSet" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ElementChoiceSet">
+            <xml-properties>
+                <xml-property name="description" value="This is how we would capture constraints defining allowed sets of elements." />
+                <xml-property name="uniqueProps" value="element-choice-set-uuid" />
+                <xml-property name="indexedProps" value="element-choice-set-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="element-choice-sets" />
+            </xml-properties>
+            <xml-root-element name="element-choice-set" />
+            <java-attributes>
+                <xml-element java-attribute="elementChoiceSetUuid" name="element-choice-set-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="elementChoiceSetName" name="element-choice-set-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="cardinality" name="cardinality" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="modelElements" name="model-elements" type="inventory.aai.onap.org.v11.ModelElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueries">
+            <xml-root-element name="named-queries" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQuery">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="nameProps" value="named-query-name" />
+                <xml-property name="uniqueProps" value="named-query-uuid" />
+                <xml-property name="indexedProps" value="named-query-uuid,named-query-name" />
+                <xml-property name="container" value="named-queries" />
+                <xml-property name="namespace" value="service-design-and-creation" />
+            </xml-properties>
+            <xml-root-element name="named-query" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryUuid" name="named-query-uuid" required="true" type="java.lang.String" xml-key="true" />
+                <xml-element java-attribute="namedQueryName" name="named-query-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryVersion" name="named-query-version" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="requiredInputParams" name="required-input-param" type="java.lang.String" >
+                    <xml-element-wrapper name="required-input-params" />
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElements">
+            <xml-root-element name="named-query-elements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="namedQueryElement" name="named-query-element" type="inventory.aai.onap.org.v11.NamedQueryElement" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="NamedQueryElement">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="named-query-element-uuid" />
+                <xml-property name="indexedProps" value="named-query-element-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="named-query-elements" />
+            </xml-properties>
+            <xml-root-element name="named-query-element" />
+            <java-attributes>
+                <xml-element java-attribute="namedQueryElementUuid" name="named-query-element-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="propertyLimitDesc" name="property-limit-desc" type="java.lang.String" />
+                <xml-element java-attribute="doNotOutput" name="do-not-output" type="java.lang.String" />
+                <xml-element java-attribute="namedQueryElements" name="named-query-elements" type="inventory.aai.onap.org.v11.NamedQueryElements" />
+                <xml-element java-attribute="relatedLookups" name="related-lookups" type="inventory.aai.onap.org.v11.RelatedLookups" />
+                <xml-element java-attribute="propertyConstraints" name="property-constraints" type="inventory.aai.onap.org.v11.PropertyConstraints" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookups">
+            <xml-root-element name="related-lookups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="relatedLookup" name="related-lookup" type="inventory.aai.onap.org.v11.RelatedLookup" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="RelatedLookup">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="related-lookup-uuid" />
+                <xml-property name="indexedProps" value="related-lookup-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="related-lookups" />
+            </xml-properties>
+            <xml-root-element name="related-lookup" />
+            <java-attributes>
+                <xml-element java-attribute="relatedLookupUuid" name="related-lookup-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="sourceNodeType" name="source-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="sourceNodeProperty" name="source-node-property" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeType" name="target-node-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="targetNodeProperty" name="target-node-property" required="true" type="java.lang.String" />
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyCollectList" name="property-collect-list" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraints">
+            <xml-root-element name="property-constraints" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="propertyConstraint" name="property-constraint" type="inventory.aai.onap.org.v11.PropertyConstraint" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="PropertyConstraint">
+            <xml-properties>
+                <xml-property name="description" value="TBD" />
+                <xml-property name="uniqueProps" value="property-constraint-uuid" />
+                <xml-property name="indexedProps" value="property-constraint-uuid" />
+                <xml-property name="allowDirectRead" value="true" />
+                <xml-property name="allowDirectWrite" value="false" />
+                <xml-property name="container" value="property-constraints" />
+            </xml-properties>
+            <xml-root-element name="property-constraint" />
+            <java-attributes>
+                <xml-element java-attribute="propertyConstraintUuid" name="property-constraint-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="autoGenerateUuid" value="true" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="constraintType" name="constraint-type" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyName" name="property-name" required="true" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" required="true" type="java.lang.String" />
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ModelAndNamedQuerySearch">
+            <xml-properties>
+                <xml-property name="description" value="ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="model-and-named-query-search" />
+            <java-attributes>
+                <xml-element java-attribute="queryParameters" name="query-parameters" type="inventory.aai.onap.org.v11.QueryParameters" />
+                <xml-element java-attribute="instanceFilters" name="instance-filters" type="inventory.aai.onap.org.v11.InstanceFilters" />
+                <xml-element java-attribute="secondaryFilts" name="secondary-filts" type="inventory.aai.onap.org.v11.SecondaryFilts" />
+                <xml-element java-attribute="topNodeType" name="top-node-type" type="java.lang.String" />
+                <xml-element java-attribute="secondaryFilterCutPoint" name="secondary-filter-cut-point" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="QueryParameters">
+            <xml-properties>
+                <xml-property name="description" value="QueryParameters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="query-parameters" />
+            <java-attributes>
+                <xml-element java-attribute="namedQuery" name="named-query" type="inventory.aai.onap.org.v11.NamedQuery" />
+                <xml-element java-attribute="model" name="model" type="inventory.aai.onap.org.v11.OverloadedModel" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="OverloadedModel">
+            <xml-root-element name="overloaded-model" />
+            <xml-properties>
+                <xml-property name="description" value="Allows for legacy POST of old-style and new-style models" />
+            </xml-properties>
+            <java-attributes>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to the main definition of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelNameVersionId" name="model-name-version-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique identifier corresponding to one version of a model in ASDC" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelType" name="model-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Type of the model, e.g., service, resource, widget, etc." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelName" name="model-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the model, which can change from version to version." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelId" name="model-id" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Invariant unique ID which does not change from version to version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersion" name="model-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelDescription" name="model-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 java-attribute="modelVers" name="model-vers" type="inventory.aai.onap.org.v11.ModelVers" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilters">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilters for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="instance-filters" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceFilter" name="instance-filter" type="inventory.aai.onap.org.v11.InstanceFilter" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InstanceFilter">
+            <xml-properties>
+                <xml-property name="description" value="InstanceFilter for performing a named-query or model query" />
+                <xml-property name="container" value="instance-filters" />
+            </xml-properties>
+            <xml-root-element name="instance-filter" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilts">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilts for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filts" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="secondaryFilt" name="secondary-filt" type="inventory.aai.onap.org.v11.SecondaryFilt" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="SecondaryFilt">
+            <xml-properties>
+                <xml-property name="description" value="SecondaryFilt for performing a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="secondary-filt" />
+            <java-attributes>
+                <xml-any-element container-type="java.util.ArrayList" java-attribute="any" lax="true" name="any" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Properties">
+            <xml-properties>
+                <xml-property name="description" value="Property holder for query properties or instance properties" />
+            </xml-properties>
+            <xml-root-element name="properties" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ResponseList">
+            <xml-properties>
+                <xml-property name="description" value="Response container for the results of a named-query or model query" />
+            </xml-properties>
+            <xml-root-element name="response-list" />
+            <java-attributes>
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItems">
+            <xml-properties>
+                <xml-property name="description" value="Container for inventory items in response list" />
+                <xml-property name="container" value="response-list" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-items" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="inventoryResponseItem" name="inventory-response-item" type="inventory.aai.onap.org.v11.InventoryResponseItem" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="InventoryResponseItem">
+            <xml-properties>
+                <xml-property name="description" value="Inventory item for response list" />
+                <xml-property name="container" value="inventory-response-items" />
+            </xml-properties>
+            <xml-root-element name="inventory-response-item" />
+            <java-attributes>
+                <xml-element java-attribute="modelName" name="model-name" type="java.lang.String" />
+                <xml-any-element java-attribute="item" />
+                <xml-element java-attribute="extraProperties" name="extra-properties" type="inventory.aai.onap.org.v11.ExtraProperties" />
+                <xml-element java-attribute="inventoryResponseItems" name="inventory-response-items" type="inventory.aai.onap.org.v11.InventoryResponseItems" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperties">
+            <xml-properties>
+                <xml-property name="description" value="Extra properties for inventory item for response list" />
+            </xml-properties>
+            <xml-root-element name="extra-properties" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="extraProperty" name="extra-property" type="inventory.aai.onap.org.v11.ExtraProperty" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ExtraProperty">
+            <xml-root-element name="extra-property" />
+            <java-attributes>
+                <xml-element java-attribute="propertyName" name="property-name" type="java.lang.String" />
+                <xml-element java-attribute="propertyValue" name="property-value" type="java.lang.String" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReferences">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="route-table-references" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTableReference" name="route-table-reference" type="inventory.aai.onap.org.v11.RouteTableReference" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="RouteTableReference">
+            <xml-root-element name="route-table-reference" />
+            <java-attributes>
+                <xml-element java-attribute="routeTableReferenceId" name="route-table-reference-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTableReferenceFqdn" name="route-table-reference-fqdn" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="FQDN entry in the route table." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Openstack route table reference." />
+                <xml-property name="nameProps" value="route-table-reference-fqdn" />
+                <xml-property name="uniqueProps" value="route-table-reference-id" />
+                <xml-property name="indexedProps" value="route-table-reference-id,route-table-reference-fqdn" />
+                <xml-property name="container" value="route-table-references" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="InstanceGroups">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack route table references" />
+            </xml-properties>
+            <xml-root-element name="instance-groups" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="instanceGroup" name="instance-group" type="inventory.aai.onap.org.v11.InstanceGroup" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="InstanceGroup">
+            <xml-root-element name="instance-group" />
+            <java-attributes>
+                <xml-element java-attribute="instanceGroupRole" name="instance-group-role" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role of the instance group." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model id for this resource or service model." />
+                    </xml-properties>
+                </xml-element>
+
+                <xml-element java-attribute="modelVersionId" name="model-version-id" required="false" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="ASDC model version uid for this resource model." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Instance Group ID, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Descriptive text to help identify the usage of this instance-group" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Only valid value today is lower case ha for high availability" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="subType" name="sub-type"  type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Valid values for ha type are [geo-activeactive, geo-activestandby, local-activeactive, local-activestandby]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="General mechanism for grouping instances" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="searchable" value="id,description"/>
+                <xml-property name="indexedProps" value="id,description,type,sub-type" />
+                <xml-property name="container" value="instance-groups" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        
+
+        <java-type name="SegmentationAssignments">
+            <xml-properties>
+                <xml-property name="description" value="Collection of openstack segmentation assignments" />
+            </xml-properties>
+            <xml-root-element name="segmentation-assignments" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="segmentationAssignment" name="segmentation-assignment" type="inventory.aai.onap.org.v11.SegmentationAssignment" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="SegmentationAssignment">
+            <xml-root-element name="segmentation-assignment" />
+            <java-attributes>
+                <xml-element java-attribute="segmentationId" name="segmentation-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Route Table Reference id, UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Openstack segmentation assignment." />
+                <xml-property name="indexedProps" value="segmentation-id" />
+                <xml-property name="dependentOn" value="l3-network" />
+                <xml-property name="container" value="segmentation-assignments" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="AllottedResources">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store slices of services being offered" />
+            </xml-properties>
+            <xml-root-element name="allotted-resources" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="allottedResource" name="allotted-resource" type="inventory.aai.onap.org.v11.AllottedResource" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="AllottedResource">
+            <xml-root-element name="allotted-resource" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The descriptive information assigned to this allotted resource instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Link back to more information in the controller" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-version-id" />
+                        <xml-property name="dbAlias" value="model-invariant-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="deployment" />
+                        <xml-property name="requires" value="model-invariant-id" />
+                        <xml-property name="dbAlias" value="model-version-id-local" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="personaModelVersion" name="persona-model-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model." />
+                        <xml-property name="visibility" value="internal" />
+                        <xml-property name="dataCopy" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of allotted resource." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="role" name="role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this resource will be providing." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v11.TunnelXconnects" />
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately allotted" />
+                <xml-property name="nameProps" value="description" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role" />
+                <xml-property name="dependentOn" value="service-instance" />
+                <xml-property name="container" value="allotted-resources" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>    
+        
+        <java-type name="TunnelXconnects">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store the specific tunnel cross connect aspects of an allotted resource" />
+            </xml-properties>
+            <xml-root-element name="tunnel-xconnects" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="tunnelXconnect" name="tunnel-xconnect" type="inventory.aai.onap.org.v11.TunnelXconnect" />
+            </java-attributes>
+        </java-type>
+        
+        <java-type name="TunnelXconnect">
+            <xml-root-element name="tunnel-xconnect" />
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Allotted Resource id UUID assigned to this instance." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan1" name="bandwidth-up-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan1" name="bandwidth-down-wan1" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN1" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthUpWan2" name="bandwidth-up-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN uplink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="bandwidthDownWan2" name="bandwidth-down-wan2" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The WAN downlink bandwidth for WAN2" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            
+            <xml-properties>
+                <xml-property name="description" value="Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted" />
+                <xml-property name="uniqueProps" value="id" />
+                <xml-property name="indexedProps" value="id" />
+                <xml-property name="dependentOn" value="allotted-resource" />
+                <xml-property name="container" value="tunnel-xconnects" />
+                <!--  <xml-property name="namespace" value="network" /> -->
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Entitlements">
+            <xml-properties>
+                <xml-property name="description" value="Entitlements, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="entitlements" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="entitlement" name="entitlement" type="inventory.aai.onap.org.v11.Entitlement" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="Entitlement">
+            <xml-root-element name="entitlement" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the entitlement group the resource comes from, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of an entitlement resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for entitlement group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="entitlements" />
+            </xml-properties>
+        </java-type>
+        
+        
+        <java-type name="Licenses">
+            <xml-properties>
+                <xml-property name="description" value="Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management" />
+            </xml-properties>
+            <xml-root-element name="licenses" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="license" name="license" type="inventory.aai.onap.org.v11.License" />
+            </java-attributes>
+        </java-type>
+                
+        <java-type name="License">
+            <xml-root-element name="license" />
+            <java-attributes>
+                <xml-element java-attribute="groupUuid" name="group-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID for the license group the resource belongs to, should be uuid." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceUuid" name="resource-uuid" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique ID of a license resource. " />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Metadata for license group." />
+                <xml-property name="indexedProps" value="group-uuid,resource-uuid" />
+                <xml-property name="dependentOn" value="generic-vnf,vce" />
+                <xml-property name="container" value="licenses" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Vnf">
+            <xml-root-element name="vnf"/>
+            <java-attributes>
+                <xml-element java-attribute="vnfId" name="vnf-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of VNF.  This is unique across the graph." />
+                    </xml-properties>
+                </xml-element>
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Abstract vnf class" />
+                <xml-property name="indexedProps" value="vnf-id" />
+                <xml-property name="uniqueProps" value="vnf-id" />
+                <xml-property name="inheritors" value="vce,generic-vnf" />
+                <xml-property name="abstract" value="true" />
+            </xml-properties>
+        </java-type>
+        
+        <java-type name="Zones">
+            <xml-properties>
+                <xml-property name="description" value="Collection of zones" />
+            </xml-properties>
+            <xml-root-element name="zones" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="zone" name="zone" type="inventory.aai.onap.org.v11.Zone" />
+            </java-attributes>
+        </java-type>
+
+        <java-type name="Zone">
+            <xml-root-element name="zone" />
+            <java-attributes>
+                <xml-element java-attribute="zoneId" name="zone-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Code assigned by AIC to the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneName" name="zone-name" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="English name associated with the zone" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="designType" name="design-type" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Design of zone [Medium/Large?]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="zoneContext" name="zone-context" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Context of zone [production/test]" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="status" name="status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Status of a zone." />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </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="nameProps" value="zone-name" />
+                <xml-property name="indexedProps" value="zone-id,design-type,zone-context" />
+                <xml-property name="uniqueProps" value="zone-id" />
+                <xml-property name="container" value="zones" />
+                <xml-property name="namespace" value="network" />
+            </xml-properties>
+        </java-type>
+        <java-type name="RouteTargets">
+            <xml-properties>
+                <xml-property name="description" value="Collection of route target information" />
+            </xml-properties>
+            <xml-root-element name="route-targets" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="routeTarget" name="route-target" type="inventory.aai.onap.org.v11.RouteTarget" />
+            </java-attributes>
+        </java-type>
+        <java-type name="RouteTarget">
+            <xml-root-element name="route-target" />
+            <java-attributes>
+                <xml-element java-attribute="globalRouteTarget" name="global-route-target" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Number used to identify an RT, globally unique in the network" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routeTargetRole" name="route-target-role" required="true" xml-key="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Role assigned to this route target" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Route target information" />
+                <xml-property name="container" value="route-targets" />
+                <xml-property name="dependentOn" value="vpn-binding" />
+                <xml-property name="canBeLinked" value="true" />
+            </xml-properties>
+        </java-type>
+                        
+        <java-type name="SriovPfs">
+            <xml-properties>
+                <xml-property name="description" value="Collection of SR-IOV Physical Functions." />
+            </xml-properties>
+            <xml-root-element name="sriov-pfs" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="sriovPf" name="sriov-pf" type="inventory.aai.onap.org.v11.SriovPf" />
+            </java-attributes>
+        </java-type>
+        <java-type name="SriovPf">
+            <xml-root-element name="sriov-pf" />
+            <java-attributes>
+                <xml-element java-attribute="pfPciId" name="pf-pci-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifier for the sriov-pf" />
+                    </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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="SR-IOV Physical Function" />
+                <xml-property name="indexedProps" value="pf-pci-id" />
+                <xml-property name="dependentOn" value="p-interface" />
+                <xml-property name="container" value="sriov-pfs" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="HostRoutes">
+            <xml-root-element name="host-routes" />
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="hostRoute" name="host-route" type="inventory.aai.onap.org.v11.HostRoute" />
+            </java-attributes>
+        </java-type>
+        <java-type name="HostRoute">
+            <xml-root-element name="host-route" />
+            <java-attributes>
+                <xml-element java-attribute="hostRouteId" name="host-route-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="host-route id" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="routePrefix" name="route-prefix" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="subnet prefix" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHop" name="next-hop" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Could be ip-address, hostname, or service-instance" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="nextHopType" name="next-hop-type" type="java.lang.String">
+                    <xml-properties>
+                        <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="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.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="indexedProps" value="host-route-id" />
+                <xml-property name="dependentOn" value="subnet" />
+                <xml-property name="container" value="host-routes" />
+            </xml-properties>
+        </java-type>
+        <java-type name="VipIpv4AddressList">
+            <xml-root-element name="vip-ipv4-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv4Address" name="vip-ipv4-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv4PrefixLength" name="vip-ipv4-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 32 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv4 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv4-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+
+        <java-type name="VipIpv6AddressList">
+            <xml-root-element name="vip-ipv6-address-list" />
+            <java-attributes>
+                <xml-element java-attribute="vipIpv6Address" name="vip-ipv6-address" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="IP address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vipIpv6PrefixLength" name="vip-ipv6-prefix-length" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Prefix length, 128 for single address" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="vlanIdInner" name="vlan-id-inner" type="java.lang.Long">
+                    <xml-properties>
+                        <xml-property name="description" value="Inner VLAN tag" />
+                    </xml-properties>
+                </xml-element>
+                <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-element>
+                <xml-element java-attribute="isFloating" name="is-floating" type="java.lang.Boolean">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator of fixed or floating address" />
+                    </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="neutronNetworkId" name="neutron-network-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron network id of the interface that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="neutronSubnetId" name="neutron-subnet-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Neutron id of subnet that address belongs to" />
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" />
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="IPv6 Address Range" />
+                <xml-property name="indexedProps" value="vip-ipv6-address,vlan-id-inner,neutron-network-id,neutron-subnet-id" />
+                <xml-property name="dependentOn" value="cloud-region" />
+            </xml-properties>
+        </java-type>
+    </java-types>
+</xml-bindings>
\ No newline at end of file
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
+               {
+                       "from": "vserver",
+                       "to": "pserver",
+                       "label": "tosca.relationships.HostedOn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
                {
                        "from": "vserver",
                        "to": "volume",
similarity index 99%
rename from src/test/resources/model/DbEdgeRules_v8.json
rename to src/test/resources/rules/DbEdgeRules_v8.json
index 6d5b06f..872c80f 100644 (file)
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
+               {
+                       "from": "vserver",
+                       "to": "pserver",
+                       "label": "tosca.relationships.HostedOn",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
                {
                        "from": "vserver",
                        "to": "volume",
similarity index 99%
rename from src/test/resources/model/DbEdgeRules_v9.json
rename to src/test/resources/rules/DbEdgeRules_v9.json
index 88801e4..163bb56 100644 (file)
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
+               {
+                       "from": "vserver",
+                       "to": "pserver",
+                       "label": "tosca.relationships.HostedOn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
                {
                        "from": "vserver",
                        "to": "volume",