[SDNC-30] summary

Updated code to use the latest AAI data model and latest XSD model version

Change-Id: I0dc536b543c47d363c99db1fe581361fe64db317
Signed-off-by: Rich Tabedzki <richard.tabedzki@att.com>
diff --git a/aai-service/provider/pom.xml b/aai-service/provider/pom.xml
index a9aa98d..00334b5 100755
--- a/aai-service/provider/pom.xml
+++ b/aai-service/provider/pom.xml
@@ -130,8 +130,8 @@
 				<configuration>
 					<instructions>
 						<Bundle-SymbolicName>org.openecomp.sdnc.sli.aai</Bundle-SymbolicName>
-						<Bundle-Activator>org.openecomp.sdnc.sli.aai.AAIServiceActivator</Bundle-Activator>
-						<Export-Package>org.openecomp.sdnc.sli.aai.*,org.openecomp.aai.inventory.v10.*</Export-Package>
+						<Bundle-Activator>org.onap.ccsdk.sli.adaptors.aai.AAIServiceActivator</Bundle-Activator>
+						<Export-Package>org.onap.ccsdk.sli.adaptors.aai.*,org.openecomp.aai.inventory.v11.*</Export-Package>
                         <Import-Package>org.openecomp.sdnc.sli.*,org.osgi.framework.*,org.slf4j.*,org.apache.commons.lang3.*,javax.xml.bind.annotation.*,javax.ws.rs.*,javax.ws.rs.core.*,com.fasterxml.jackson.module.jaxb.*,com.sun.jersey.client.urlconnection.*,com.sun.jersey.api.client.config.*,com.fasterxml.jackson.databind.type.*,com.fasterxml.jackson.module.jaxb.*,com.fasterxml.jackson.databind.introspect.*,com.fasterxml.jackson.annotation.*,com.fasterxml.jackson.databind.*</Import-Package>
 						<Import-Package>*</Import-Package>
 						<Embed-Transitive>true</Embed-Transitive>
@@ -155,13 +155,13 @@
 				<configuration>
 				<schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory>
 					<schemaIncludes>
-						<value>aai_schema_v10.xsd</value>
+						<value>aai_schema_v11.xsd</value>
 					</schemaIncludes>
 					<bindingIncludes>
 						<include>aai-schema-bindings.xjb</include>
 					</bindingIncludes>
 					<generateDirectory>${project.build.directory}/generated-sources/main/java</generateDirectory>
-                                        <generatePackage>org.openecomp.aai.inventory.v10</generatePackage>
+                                        <generatePackage>org.openecomp.aai.inventory.v11</generatePackage>
 					<extension>true</extension>
 				<args>
 					<arg>-Xannotate</arg>
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIClient.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIClient.java
similarity index 91%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIClient.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIClient.java
index ba5ef58..4d836b4 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIClient.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIClient.java
@@ -22,36 +22,17 @@
 package org.onap.ccsdk.sli.adaptors.aai;
 
 import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.openecomp.aai.inventory.v11.*;
 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
 import org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin;
 import org.onap.ccsdk.sli.core.sli.SvcLogicResource;
 import org.onap.ccsdk.sli.core.sli.SvcLogicResource.QueryStatus;
-import org.openecomp.aai.inventory.v10.AvailabilityZone;
-import org.openecomp.aai.inventory.v10.Complex;
-import org.openecomp.aai.inventory.v10.CtagPool;
-import org.openecomp.aai.inventory.v10.DvsSwitch;
-import org.openecomp.aai.inventory.v10.GenericVnf;
-import org.openecomp.aai.inventory.v10.L3Network;
-import org.openecomp.aai.inventory.v10.OamNetwork;
-import org.openecomp.aai.inventory.v10.PInterface;
-import org.openecomp.aai.inventory.v10.PhysicalLink;
-import org.openecomp.aai.inventory.v10.Pserver;
-import org.openecomp.aai.inventory.v10.SearchResults;
-import org.openecomp.aai.inventory.v10.Service;
-import org.openecomp.aai.inventory.v10.ServiceInstance;
-import org.openecomp.aai.inventory.v10.SitePairSet;
-import org.openecomp.aai.inventory.v10.Tenant;
-import org.openecomp.aai.inventory.v10.Vce;
-import org.openecomp.aai.inventory.v10.VnfImage;
-import org.openecomp.aai.inventory.v10.Vpe;
-import org.openecomp.aai.inventory.v10.VplsPe;
-import org.openecomp.aai.inventory.v10.VpnBinding;
-import org.openecomp.aai.inventory.v10.Vserver;
 import org.onap.ccsdk.sli.adaptors.aai.data.notify.NotifyEvent;
 import org.onap.ccsdk.sli.adaptors.aai.data.v1507.VServer;
 
@@ -216,5 +197,7 @@
 	public void logKeyError(String keys);
 
 	public QueryStatus processResponseData(String rv, String resource, AAIRequest request, String prefix,  SvcLogicContext ctx, HashMap<String, String> nameValues, String modifier) throws JsonParseException, JsonMappingException, IOException, AAIServiceException ;
+	public String getPathTemplateForResource(String resoourceName, String join, SvcLogicContext ctx) throws MalformedURLException;
+	public boolean isDeprecatedFormat(String resource, HashMap<String, String> nameValues);
 
 }
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIDeclarations.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIDeclarations.java
similarity index 88%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIDeclarations.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIDeclarations.java
index 3ba453d..73c2eeb 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIDeclarations.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIDeclarations.java
@@ -48,23 +48,23 @@
 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
 import org.onap.ccsdk.sli.core.sli.SvcLogicResource.QueryStatus;
-import org.openecomp.aai.inventory.v10.GenericVnf;
-import org.openecomp.aai.inventory.v10.InventoryResponseItem;
-import org.openecomp.aai.inventory.v10.InventoryResponseItems;
-import org.openecomp.aai.inventory.v10.L3Network;
-import org.openecomp.aai.inventory.v10.LogicalLink;
-import org.openecomp.aai.inventory.v10.Metadata;
-import org.openecomp.aai.inventory.v10.Metadatum;
-import org.openecomp.aai.inventory.v10.Pnf;
-import org.openecomp.aai.inventory.v10.Relationship;
-import org.openecomp.aai.inventory.v10.RelationshipData;
-import org.openecomp.aai.inventory.v10.RelationshipList;
-import org.openecomp.aai.inventory.v10.ResultData;
-import org.openecomp.aai.inventory.v10.SearchResults;
-import org.openecomp.aai.inventory.v10.ServiceInstance;
-import org.openecomp.aai.inventory.v10.Vlan;
-import org.openecomp.aai.inventory.v10.Vlans;
-import org.openecomp.aai.inventory.v10.Vserver;
+import org.openecomp.aai.inventory.v11.GenericVnf;
+import org.openecomp.aai.inventory.v11.InventoryResponseItem;
+import org.openecomp.aai.inventory.v11.InventoryResponseItems;
+import org.openecomp.aai.inventory.v11.L3Network;
+import org.openecomp.aai.inventory.v11.LogicalLink;
+import org.openecomp.aai.inventory.v11.Metadata;
+import org.openecomp.aai.inventory.v11.Metadatum;
+import org.openecomp.aai.inventory.v11.Pnf;
+import org.openecomp.aai.inventory.v11.Relationship;
+import org.openecomp.aai.inventory.v11.RelationshipData;
+import org.openecomp.aai.inventory.v11.RelationshipList;
+import org.openecomp.aai.inventory.v11.ResultData;
+import org.openecomp.aai.inventory.v11.SearchResults;
+import org.openecomp.aai.inventory.v11.ServiceInstance;
+import org.openecomp.aai.inventory.v11.Vlan;
+import org.openecomp.aai.inventory.v11.Vlans;
+import org.openecomp.aai.inventory.v11.Vserver;
 import org.onap.ccsdk.sli.adaptors.aai.AAIService.AAIRequestExecutor;
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
 import org.onap.ccsdk.sli.adaptors.aai.query.FormattedQueryResultList;
@@ -148,10 +148,10 @@
 
 		String vnfId = null;
 		String vnfName = null;
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 		getLogger().debug("key = "+ nameValues.toString());
 
-		if(!checkOldFormat(resource, nameValues)) {
+		if(!AAIServiceUtils.isValidFormat(resource, nameValues)) {
 			ctx.setAttribute(String.format("%s.error.message", prefix), String.format("Resource %s is not supported. Key string contains invaid identifiers", resource));
 			return QueryStatus.FAILURE;
 		}
@@ -392,37 +392,6 @@
 //		return QueryStatus.SUCCESS;
 	}
 
-	private boolean checkOldFormat(String resource, HashMap<String, String> nameValues) {
-
-		switch(resource){
-		case "formatted-query":
-		case "generic-query":
-		case "named-query":
-		case "nodes-query":
-		case "linterface":
-		case "l2-bridge-sbg":
-		case "l2-bridge-bgf":
-		case "echo":
-		case "test":
-			return true;
-		}
-		if(resource.contains(":")) {
-			resource = resource.substring(0, resource.indexOf(":"));
-		}
-
-		Set<String> keys = nameValues.keySet();
-		for(String key : keys) {
-			if(!key.contains(".")) {
-				if("depth".equals(key) || "related-to".equals(key) || "related_to".equals(key))
-					continue;
-				else {
-					getLogger().warn(String.format("key %s is incompatible with resource type '%s'", key, resource));
-					return false;
-				}
-			}
-		}
-		return true;
-	}
 
 	public void writeMap(Map<String, Object> properties, String prefix, SvcLogicContext ctx) {
 		Set<String> mapKeys = properties.keySet();
@@ -468,9 +437,9 @@
 			throws SvcLogicException {
 
 		getLogger().debug("AAIService.save\tresource="+resource);
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 
-		if(!checkOldFormat(resource, nameValues)) {
+		if(!AAIServiceUtils.isValidFormat(resource, nameValues)) {
 			ctx.setAttribute(String.format("%s.error.message", prefix), String.format("Resource %s is not supported. Key string contains invaid identifiers", resource));
 			return QueryStatus.FAILURE;
 		}
@@ -607,9 +576,9 @@
 	public QueryStatus update(String resource, String key, Map<String, String> params, String prefix, SvcLogicContext ctx) throws SvcLogicException {
 
 		resource = resource.toLowerCase();
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 		getLogger().debug("key = "+ Arrays.toString(nameValues.entrySet().toArray()));
-		if(!checkOldFormat(resource, nameValues)) {
+		if(!AAIServiceUtils.isValidFormat(resource, nameValues)) {
 			ctx.setAttribute(String.format("%s.error.message", prefix), String.format("Resource %s is not supported. Key string contains invaid identifiers", resource));
 			return QueryStatus.FAILURE;
 		}
@@ -668,10 +637,10 @@
 	@Override
 	public QueryStatus delete(String resource, String key, SvcLogicContext ctx) throws SvcLogicException {
 		getLogger().debug("AAIService.delete\tresource="+resource);
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 		getLogger().debug("key = "+ Arrays.toString(nameValues.entrySet().toArray()));
 
-		if(!checkOldFormat(resource, nameValues)) {
+		if(!AAIServiceUtils.isValidFormat(resource, nameValues)) {
 			ctx.setAttribute(String.format("%s.error.message", "aaiData"), String.format("Resource %s is not supported. Key string contains invaid identifiers", resource));
 			return QueryStatus.FAILURE;
 		}
@@ -824,7 +793,7 @@
 		QueryStatus retval = QueryStatus.SUCCESS;
 		String modifier = null;
 
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 		if(resource.contains(":")) {
 			modifier = resource.split(":")[1];
 		}
@@ -922,7 +891,7 @@
 				response = rDatum;
 			}
 
-		if("formatted-query".equals(resource)) {
+		if("formatted-query".equals(resource) || "custom-query".equals(resource)) {
 			FormattedQueryResultList rd = FormattedQueryResultList.class.cast(response);
 			List<Results> iRIlist = rd.getResults();
 			if(iRIlist == null || iRIlist.isEmpty()) {
@@ -930,6 +899,20 @@
 			}
 		}
 
+		// process relationship list
+		// this is a temporary soluton to address the realationship handling changes added in Release 17.07
+		try {
+			Class<?> clazz = response.getClass();
+			Method getter = clazz.getMethod("getRelationshipList");
+			Object obj = getter.invoke(response);
+			if(obj != null && obj instanceof RelationshipList) {
+				RelationshipList list = RelationshipList.class.cast(obj);
+				AAIServiceUtils.populateRelationshipDataFromPath(list);
+			}
+		} catch(Exception exc) {
+			getLogger().debug("Retrofiting relationship data: " + exc.getMessage());
+		}
+
 			String preFix = null;
 			if(prefix == null || prefix.isEmpty()) {
 				preFix = "";
@@ -967,7 +950,6 @@
 		    	if(value instanceof ArrayList) {
 		    		ArrayList<?> array = ArrayList.class.cast(value);
 		    		for(int i = 0; i < array.size(); i++) {
-//		    			ctx.setAttribute(String.format("%s%s[%d]", preFix, theKey, i), array.get(i).toString());
 		    			writeList(array, String.format("%s.%s", prefix, theKey), ctx);
 		    		}
 		    		continue;
@@ -1099,13 +1081,13 @@
 		throw new SvcLogicException("Method AAIService.reserve() has not been implemented yet");
 	}
 
-	private QueryStatus newModelSave(String resource, boolean force, String key, Map<String, String> parms, String prefix, SvcLogicContext ctx) {
+	private QueryStatus newModelSave(String resource, boolean force, String key, Map<String, String> params, String prefix, SvcLogicContext ctx) {
 		getLogger().debug("Executing newModelSave for resource : " + resource);
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 
 		try {
 			ArrayList<String> subResources = new ArrayList<String>();
-			Set<String> set = parms.keySet();
+			Set<String> set = params.keySet();
 			Map<String, Method> setters = new HashMap<String, Method>();
 			Map<String, Method> getters = new HashMap<String, Method>();
 
@@ -1120,14 +1102,13 @@
 				for(Annotation annotation : annotations) {
 					Class<? extends Annotation> anotationType = annotation.annotationType();
 					String annotationName = anotationType.getName();
-//					if("com.fasterxml.jackson.annotation.JsonPropertyOrder".equals(annotationName)){
 
 					// 2. find string property setters and getters for the lists
 					if("javax.xml.bind.annotation.XmlType".equals(annotationName)){
 						XmlType order = (XmlType)annotation;
 						String[]  values = order.propOrder();
 						for(String value : values) {
-							String id = camelCaseToDashedString(value);
+							String id = AAIServiceUtils.camelCaseToDashedString(value);
 							Field field = resourceClass.getDeclaredField(value);
 							Class<?> type = field.getType();
 							Method setter = null;
@@ -1137,17 +1118,17 @@
 									try {
 										setter.setAccessible(true);
 										Object arglist[] = new Object[1];
-										arglist[0] = parms.get(id);
+										arglist[0] = params.get(id);
 
 										if(arglist[0] != null) {
 											if(!type.getName().equals("java.lang.String")) {
 //											getLogger().debug(String.format("Processing %s with parameter %s", types[0].getName(), value));
 												if("boolean".equals(type.getName())) {
-													arglist[0] = valueOf(Boolean.class, parms.get(id));
+													arglist[0] = valueOf(Boolean.class, params.get(id));
 												} else if("long".equals(type.getName())) {
-														arglist[0] = valueOf(Long.class, parms.get(id));
+														arglist[0] = valueOf(Long.class, params.get(id));
 												} else {
-													arglist[0] = valueOf(type, parms.get(id));
+													arglist[0] = valueOf(type, params.get(id));
 												}
 											}
 											Object o = setter.invoke(instance, arglist);
@@ -1161,11 +1142,11 @@
 								} else if(type.getName().equals("java.util.List")) {
 									List<String> newValues = new ArrayList<String>();
 									String length = id+"_length";
-									if(!parms.isEmpty() && parms.containsKey(length)) {
-										String tmp = parms.get(length).toString();
+									if(!params.isEmpty() && params.containsKey(length)) {
+										String tmp = params.get(length).toString();
 										int count = Integer.valueOf(tmp);
 										for(int i=0; i<count; i++) {
-											String tmpValue = parms.get(String.format("%s[%d]", id, i));
+											String tmpValue = params.get(String.format("%s[%d]", id, i));
 											newValues.add(tmpValue);
 										}
 										if(!newValues.isEmpty()) {
@@ -1208,7 +1189,7 @@
 			Set<String> metadataKeys = new TreeSet<String>();
 
 			for(String attribute : set) {
-				String value = parms.get(attribute);
+				String value = params.get(attribute);
 				if(attribute.startsWith("relationship-list")) {
 					relationshipKeys.add(attribute);
 				} else if(attribute.startsWith("vlans")) {
@@ -1219,7 +1200,7 @@
 			}
 			// 3. find list property getters
 			for(String attribute : set) {
-				String value = parms.get(attribute);
+				String value = params.get(attribute);
 				Method method = getters.get(attribute);
 				if(method != null) {
 					try {
@@ -1250,7 +1231,13 @@
 			if( (subResources.contains("relationship-list") || subResources.contains("relationshipList")) &&  !relationshipKeys.isEmpty()) {
 				RelationshipList relationshipList = null;
 				Object obj = null;
-				Method getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+				Method getRelationshipListMethod = null;
+				try {
+					 getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+				} catch(Exception exc) {
+					getLogger().debug("Retrofiting relationship data: " + exc.getMessage());
+				}
+
 				if(getRelationshipListMethod != null){
 					try {
 						getRelationshipListMethod.setAccessible(true);
@@ -1281,35 +1268,41 @@
 
 				int i = 0;
 				while(true){
-					int j = 0;
 					String searchKey = "relationship-list.relationship[" + i + "].related-to";
-					if(!parms.containsKey(searchKey))
+					if(!params.containsKey(searchKey))
 						break;
+					int j = 0;
+					String relatedTo = params.get(searchKey);
+					String relatedLinkKey = "relationship-list.relationship[" + i + "].related-link";
+					String relatedLink = null;
+					if(params.containsKey(relatedLinkKey)) {
+						relatedLink = params.get(relatedLinkKey);
+					}
 					Relationship relationship = new Relationship();
 					relationships.add(relationship);
-
-					String relatedTo = parms.get(searchKey);
 					relationship.setRelatedTo(relatedTo);
-
-					List<RelationshipData> relData = relationship.getRelationshipData();
-//					if(relData == null) {
-//						relData = new LinkedList<RelationshipData>();
-//						relationship.setRelationshipData(relData);
-//					}
+					if(relatedLink != null) {
+						relationship.setRelatedLink(relatedLink);
+					} else {
+//						List<RelationshipData> relData = relationship.getRelationshipData();
+						Map<String, String> relParams = new HashMap<String, String>();
 
 					while(true) {
 						String searchRelationshipKey = "relationship-list.relationship[" + i + "].relationship-data[" + j + "].relationship-key";
 						String searchRelationshipValue = "relationship-list.relationship[" + i + "].relationship-data[" + j + "].relationship-value";
-						if(!parms.containsKey(searchRelationshipKey))
+							if(!params.containsKey(searchRelationshipKey))
 							break;
 
-						RelationshipData relDatum = new RelationshipData();
-						relDatum.setRelationshipKey(parms.get(searchRelationshipKey));
-						relDatum.setRelationshipValue(parms.get(searchRelationshipValue));
-						relData.add(relDatum);
+							relParams.put(params.get(searchRelationshipKey), params.get(searchRelationshipValue));
 						j++;
 					}
-
+						AAIRequest rlRequest = AAIRequest.createRequest(relatedTo, relParams);
+						for(String key1 : relParams.keySet()) {
+							rlRequest.addRequestProperty(key1, relParams.get(key1));
+						}
+						String path = rlRequest.updatePathDataValues(null);
+						relationship.setRelatedLink(path);
+					}
 					i++;
 				}
 			}
@@ -1348,14 +1341,14 @@
 				int i = 0;
 				while(true){
 					String searchKey = "vlans.vlan[" + i + "].vlan-interface";
-					if(!parms.containsKey(searchKey))
+					if(!params.containsKey(searchKey))
 						break;
 
-					String vlanInterface = parms.get("vlans.vlan[" + i + "].vlan-interface");
-					String vlanIdInner	= parms.get("vlans.vlan[" + i + "].vlan-id-inner");
-					String vlanIdOute 	= parms.get("vlans.vlan[" + i + "].vlan-id-outer");
-					String speedValue 	= parms.get("vlans.vlan[" + i + "].speed-value");
-					String speedUnits 	= parms.get("vlans.vlan[" + i + "].speed-units");
+					String vlanInterface = params.get("vlans.vlan[" + i + "].vlan-interface");
+					String vlanIdInner	= params.get("vlans.vlan[" + i + "].vlan-id-inner");
+					String vlanIdOute 	= params.get("vlans.vlan[" + i + "].vlan-id-outer");
+					String speedValue 	= params.get("vlans.vlan[" + i + "].speed-value");
+					String speedUnits 	= params.get("vlans.vlan[" + i + "].speed-units");
 
 					Vlan vlan = new Vlan();
 					vlan.setVlanInterface(vlanInterface);
@@ -1419,10 +1412,10 @@
 				int i = 0;
 				while(true){
 					String metaKey = "metadata.metadatum[" + i + "].meta-key";
-					if(!parms.containsKey(metaKey))
+					if(!params.containsKey(metaKey))
 						break;
 
-					String metaValue = parms.get("metadata.metadatum[" + i + "].meta-value");
+					String metaValue = params.get("metadata.metadatum[" + i + "].meta-value");
 
 					Metadatum vlan = new Metadatum();
 					vlan.setMetaname(metaKey);
@@ -1483,13 +1476,6 @@
 		return QueryStatus.SUCCESS;
 	}
 
-	private static final String regex = "([A-Z][a-z,0-9]+)";
-	private static final String replacement = "-$1";
-
-	private String camelCaseToDashedString(String propOrder) {
-		return propOrder.replaceAll(regex, replacement).toLowerCase();
-	}
-
 	private QueryStatus newModelProcessRelationshipList(Object instance, Map<String, String> params, String prefix, SvcLogicContext ctx) throws Exception {
 
 		Class resourceClass = instance.getClass();
@@ -1511,7 +1497,12 @@
 		if(!relationshipKeys.isEmpty()) {
 			RelationshipList relationshipList = null;
 			Object obj = null;
-			Method getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+			Method getRelationshipListMethod = null;
+			try {
+				 getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+			} catch(Exception exc) {
+				getLogger().debug("Retrofiting relationship data: " + exc.getMessage());
+			}
 			if(getRelationshipListMethod != null){
 				try {
 					getRelationshipListMethod.setAccessible(true);
@@ -1546,13 +1537,12 @@
 			}
 
 			int i = 0;
-			int j = 0;
 			while(true){
 				String searchKey = "relationship-list.relationship[" + i + "].related-to";
 				if(!params.containsKey(searchKey))
 					break;
 
-				j = 0;
+				int j = 0;
 				String relatedTo = params.get(searchKey);
 				String relatedLinkKey = "relationship-list.relationship[" + i + "].related-link";
 				String relatedLink = null;
@@ -1566,7 +1556,7 @@
 					if(relatedLink != null) {
 						relationship.setRelatedLink(relatedLink);
 				} else  {
-				List<RelationshipData> relData = relationship.getRelationshipData();
+					Map<String, String> relParams = new HashMap<String, String>();
 
 				while(true) {
 					String searchRelationshipKey = "relationship-list.relationship[" + i + "].relationship-data[" + j + "].relationship-key";
@@ -1574,15 +1564,17 @@
 					if(!params.containsKey(searchRelationshipKey))
 						break;
 
-					RelationshipData relDatum = new RelationshipData();
-					relDatum.setRelationshipKey(params.get(searchRelationshipKey));
-					relDatum.setRelationshipValue(params.get(searchRelationshipValue));
-					relData.add(relDatum);
+						relParams.put(params.get(searchRelationshipKey), params.get(searchRelationshipValue));
 					j++;
 				}
+					AAIRequest rlRequest = AAIRequest.createRequest(relatedTo, relParams);
+					for(String key : relParams.keySet()) {
+						rlRequest.addRequestProperty(key, relParams.get(key));
+					}
+					String path = rlRequest.updatePathDataValues(null);
+					relationship.setRelatedLink(path);
 				}
 
-
 				i++;
 			}
 		}
@@ -1602,113 +1594,6 @@
 		return null;
 	}
 
-	protected HashMap<String,String> keyToHashMap(String key,	SvcLogicContext ctx) {
-		if (key == null) {
-			return (null);
-		}
-
-		getLogger().debug("Converting key [" + key + "] to where clause");
-
-		if (key.startsWith("'") && key.endsWith("'")) {
-			key = key.substring(1, key.length() - 1);
-
-			getLogger().debug("Stripped outer single quotes - key is now [" + key + "]");
-		}
-
-		String[] keyTerms = key.split("\\s+");
-
-		StringBuffer whereBuff = new StringBuffer();
-		String term1 = null;
-		String op = null;
-		String term2 = null;
-		HashMap<String, String> results = new HashMap<String, String>();
-
-		for (int i = 0; i < keyTerms.length; i++) {
-			if (term1 == null) {
-				if ("and".equalsIgnoreCase(keyTerms[i])
-						|| "or".equalsIgnoreCase(keyTerms[i])) {
-					// Skip over ADD/OR
-				} else {
-					term1 = resolveTerm(keyTerms[i], ctx);
-				}
-			} else if (op == null) {
-				if ("==".equals(keyTerms[i])) {
-					op = "=";
-				} else {
-					op = keyTerms[i];
-				}
-			} else {
-				term2 = resolveTerm(keyTerms[i], ctx);
-				term2 = term2.trim().replace("'", "").replace("$", "").replace("'", "");
-				results.put(term1,  term2);
-
-				term1 = null;
-				op = null;
-				term2 = null;
-			}
-		}
-
-		return (results);
-	}
-
-	private String resolveTerm(String term, SvcLogicContext ctx) {
-		if (term == null) {
-			return (null);
-		}
-
-		getLogger().debug("resolveTerm: term is " + term);
-
-		if (term.startsWith("$") && (ctx != null)) {
-			// Resolve any index variables.
-
-			return ("'" + resolveCtxVariable(term.substring(1), ctx) + "'");
-		} else if (term.startsWith("'") || term.startsWith("\"")) {
-			return (term);
-		} else {
-			return (term.replaceAll("-", "_"));
-
-		}
-
-	}
-
-	private String resolveCtxVariable(String ctxVarName, SvcLogicContext ctx) {
-
-		if (ctxVarName.indexOf('[') == -1) {
-			// Ctx variable contains no arrays
-			return (ctx.getAttribute(ctxVarName));
-		}
-
-		// Resolve any array references
-		StringBuffer sbuff = new StringBuffer();
-		String[] ctxVarParts = ctxVarName.split("\\[");
-		sbuff.append(ctxVarParts[0]);
-		for (int i = 1; i < ctxVarParts.length; i++) {
-			if (ctxVarParts[i].startsWith("$")) {
-				int endBracketLoc = ctxVarParts[i].indexOf("]");
-				if (endBracketLoc == -1) {
-					// Missing end bracket ... give up parsing
-					getLogger().warn("Variable reference " + ctxVarName
-							+ " seems to be missing a ']'");
-					return (ctx.getAttribute(ctxVarName));
-				}
-
-				String idxVarName = ctxVarParts[i].substring(1, endBracketLoc);
-				String remainder = ctxVarParts[i].substring(endBracketLoc);
-
-				sbuff.append("[");
-				sbuff.append(ctx.getAttribute(idxVarName));
-				sbuff.append(remainder);
-
-			} else {
-				// Index is not a variable reference
-				sbuff.append("[");
-				sbuff.append(ctxVarParts[i]);
-			}
-		}
-
-		return (ctx.getAttribute(sbuff.toString()));
-	}
-
 
 	public QueryStatus backup(Map<String, String> params, SvcLogicContext ctx) throws SvcLogicException {
 		String resource = params.get("resource").toLowerCase();
@@ -1811,7 +1696,12 @@
 
 			RelationshipList relationshipList = null;
 			Object obj = null;
-			Method getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+			Method getRelationshipListMethod = null;
+			try {
+				 getRelationshipListMethod = resourceClass.getMethod("getRelationshipList");
+			} catch(Exception exc) {
+				getLogger().debug("Retrofiting relationship data: " + exc.getMessage());
+			}
 			if(getRelationshipListMethod != null){
 				try {
 					getRelationshipListMethod.setAccessible(true);
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIExecutorInterface.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIExecutorInterface.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIExecutorInterface.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIExecutorInterface.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIRequest.java
similarity index 92%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIRequest.java
index 4f2181f..e54d1f7 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIRequest.java
@@ -43,7 +43,7 @@
 import java.util.TreeSet;
 
 import org.apache.commons.lang.StringUtils;
-import org.openecomp.aai.inventory.v10.GenericVnf;
+import org.openecomp.aai.inventory.v11.GenericVnf;
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
@@ -113,6 +113,7 @@
 		case "nodes-query":
 			return new NodesQueryRequest();
 		case "custom-query":
+		case "formatted-query":
 			return new CustomQueryRequest();
 		case "linterface":
 			return new LInterfaceRequest(LInterfaceRequest.TYPE.L2_BRIDGE_SBG);
@@ -146,6 +147,11 @@
 	private static Map<BitSet, String> bitsetPaths = new LinkedHashMap<BitSet, String>();
 
 
+	public static Set<String> getResourceNames() {
+		return tagValues.keySet();
+	}
+
+
 	public static void setProperties(Properties props, AAIService aaiService) {
 		AAIRequest.configProperties = props;
 		AAIRequest.aaiService = aaiService;
@@ -230,18 +236,24 @@
 		aaiService.getLogger().warn("Could not deserialize object of type " + lInterfaceRequest.getClass().getSimpleName(), exc) ;
 	}
 
-//	public abstract URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException;
-
 	public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
 
 		String request_url = null;
 
-		request_url = target_uri + getRequestPath();
+		request_url = target_uri + updatePathDataValues(resourceVersion);
 
+		URL http_req_url =	new URL(request_url);
+
+		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
+
+		return http_req_url;
+	}
+	
+	public String updatePathDataValues(Object resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
+		String request_url = getRequestPath();
+		
 		Set<String> uniqueResources = extractUniqueResourceSetFromKeys(requestProperties.stringPropertyNames());
 
-//		request_url = processPathData(request_url, requestProperties);
-
 		for(String resoourceName:uniqueResources) {
 			AAIRequest locRequest = AAIRequest.createRequest(resoourceName, new HashMap<String, String>());
 			if(locRequest != null) {
@@ -253,19 +265,14 @@
 				} catch (Exception e) {
 					e.printStackTrace();
 				}
-//				request_url = locRequest.processPathData(request_url, requestProperties);
 			}
 		}
 
 		if(resourceVersion != null) {
 			request_url = request_url +"?resource-version="+resourceVersion;
 		}
-		URL http_req_url =	new URL(request_url);
 
-		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
-
-
-		return http_req_url;
+		return request_url;
 	}
 
 
@@ -365,7 +372,7 @@
         return AAIService.getObjectMapper();
 	}
 
-	protected static Class<? extends AAIDatum> getClassFromResource(String resoourceName) throws ClassNotFoundException {
+	public static Class<? extends AAIDatum> getClassFromResource(String resoourceName) throws ClassNotFoundException {
 		String className = GenericVnf.class.getName();
 		String[] split = resoourceName.split("-");
 		for(int i = 0; i < split.length; i++) {
@@ -414,6 +421,19 @@
 	    return query_pairs;
 	}
 
+	public static Map<String, String> splitPath(String path) throws UnsupportedEncodingException {
+	    Map<String, String> query_pairs = new LinkedHashMap<String, String>();
+
+	    if(path != null && !path.isEmpty()) {
+	    	String[] pairs = path.split("/");
+	    	for (String pair : pairs) {
+	    		int idx = pair.indexOf("=");
+	    		query_pairs.put(URLDecoder.decode(pair.substring(0, idx), "UTF-8"), URLDecoder.decode(pair.substring(idx + 1), "UTF-8"));
+	    	}
+	    }
+	    return query_pairs;
+	}
+	
 	protected boolean expectsDataFromPUTRequest() {
 		return false;
 	}
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIService.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIService.java
similarity index 96%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIService.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIService.java
index c50178b..b5e4524 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIService.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIService.java
@@ -36,6 +36,7 @@
 import java.lang.reflect.Modifier;
 import java.net.HttpURLConnection;
 import java.net.MalformedURLException;
+import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.net.URLEncoder;
@@ -66,6 +67,7 @@
 import javax.net.ssl.SSLSession;
 import javax.net.ssl.SSLSocketFactory;
 import javax.ws.rs.HttpMethod;
+import javax.ws.rs.core.UriBuilder;
 import javax.xml.bind.annotation.XmlElement;
 
 import org.apache.commons.codec.binary.Base64;
@@ -75,29 +77,29 @@
 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
 import org.onap.ccsdk.sli.core.sli.SvcLogicResource;
-import org.openecomp.aai.inventory.v10.AvailabilityZone;
-import org.openecomp.aai.inventory.v10.Complex;
-import org.openecomp.aai.inventory.v10.CtagPool;
-import org.openecomp.aai.inventory.v10.DvsSwitch;
-import org.openecomp.aai.inventory.v10.GenericVnf;
-import org.openecomp.aai.inventory.v10.L3Network;
-import org.openecomp.aai.inventory.v10.OamNetwork;
-import org.openecomp.aai.inventory.v10.PInterface;
-import org.openecomp.aai.inventory.v10.PhysicalLink;
-import org.openecomp.aai.inventory.v10.Pserver;
-import org.openecomp.aai.inventory.v10.ResultData;
-import org.openecomp.aai.inventory.v10.SearchResults;
-import org.openecomp.aai.inventory.v10.Service;
-import org.openecomp.aai.inventory.v10.ServiceInstance;
-import org.openecomp.aai.inventory.v10.SitePairSet;
-import org.openecomp.aai.inventory.v10.Tenant;
-import org.openecomp.aai.inventory.v10.Vce;
-import org.openecomp.aai.inventory.v10.VnfImage;
-import org.openecomp.aai.inventory.v10.VnfImages;
-import org.openecomp.aai.inventory.v10.Vpe;
-import org.openecomp.aai.inventory.v10.VplsPe;
-import org.openecomp.aai.inventory.v10.VpnBinding;
-import org.openecomp.aai.inventory.v10.Vserver;
+import org.openecomp.aai.inventory.v11.AvailabilityZone;
+import org.openecomp.aai.inventory.v11.Complex;
+import org.openecomp.aai.inventory.v11.CtagPool;
+import org.openecomp.aai.inventory.v11.DvsSwitch;
+import org.openecomp.aai.inventory.v11.GenericVnf;
+import org.openecomp.aai.inventory.v11.L3Network;
+import org.openecomp.aai.inventory.v11.OamNetwork;
+import org.openecomp.aai.inventory.v11.PInterface;
+import org.openecomp.aai.inventory.v11.PhysicalLink;
+import org.openecomp.aai.inventory.v11.Pserver;
+import org.openecomp.aai.inventory.v11.ResultData;
+import org.openecomp.aai.inventory.v11.SearchResults;
+import org.openecomp.aai.inventory.v11.Service;
+import org.openecomp.aai.inventory.v11.ServiceInstance;
+import org.openecomp.aai.inventory.v11.SitePairSet;
+import org.openecomp.aai.inventory.v11.Tenant;
+import org.openecomp.aai.inventory.v11.Vce;
+import org.openecomp.aai.inventory.v11.VnfImage;
+import org.openecomp.aai.inventory.v11.VnfImages;
+import org.openecomp.aai.inventory.v11.Vpe;
+import org.openecomp.aai.inventory.v11.VplsPe;
+import org.openecomp.aai.inventory.v11.VpnBinding;
+import org.openecomp.aai.inventory.v11.Vserver;
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
 import org.onap.ccsdk.sli.adaptors.aai.data.ErrorResponse;
 import org.onap.ccsdk.sli.adaptors.aai.data.RequestError;
@@ -383,7 +385,13 @@
     	con.setRequestProperty( "Content-Type",  "PATCH".equalsIgnoreCase(method) ? "application/merge-patch+json" : "application/json" );
         con.setRequestProperty("X-FromAppId", application_id);
         con.setRequestProperty("X-TransactionId",TransactionIdTracker.getNextTransactionId());
-        con.setRequestProperty(MetricLogger.REQUEST_ID, ml.getRequestID());
+        String mlId = ml.getRequestID();
+        if(mlId != null && !mlId.isEmpty()) {
+        	LOG.debug(String.format("MetricLogger requestId = %s", mlId));
+        	con.setRequestProperty(MetricLogger.REQUEST_ID, mlId);
+        } else {
+        	LOG.debug("MetricLogger requestId is null");
+        }
 
         if(user_name != null && !user_name.isEmpty() && user_password != null && !user_password.isEmpty()) {
         	String basicAuth = "Basic " + new String(Base64.encodeBase64((user_name + ":" + user_password).getBytes()));
@@ -697,7 +705,7 @@
 	{
 		String encrypted_url = selection;
 		String apnpattern =
-				"/aai/v10/business/customers/customer/(.+)/service-subscriptions/service-subscription/(.+)/service-instances/service-instance/(.+)/";
+				"/aai/v11/business/customers/customer/(.+)/service-subscriptions/service-subscription/(.+)/service-instances/service-instance/(.+)/";
 		Pattern pattern = Pattern.compile(apnpattern);
 
 		try {
@@ -1773,8 +1781,12 @@
         SvcLogicContext ctx = new SvcLogicContext();
         if(!key.contains(" = ") && isValidURL(key)) {
         	key = String.format("selflink = '%s'", key);
+        } else
+        if(!key.contains(" = ") && isValidURI(key)) {
+        	key = String.format("resource-path = '%s'", key);
         }
-        HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+
+        HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 
         SelfLinkRequest request = new SelfLinkRequest(type);
         request.processRequestPathValues(nameValues);
@@ -1974,12 +1986,12 @@
 
 
 	@Override
-	public VnfImage requestVnfImageData(String att_uuid) throws AAIServiceException {
+	public VnfImage requestVnfImageData(String vnf_image_uuid) throws AAIServiceException {
 		VnfImage response = null;
 
 		try {
 			AAIRequest request = AAIRequest.getRequestFromResource("vnf-image");
-			request.addRequestProperty("vnf-image.att-uuid", att_uuid);
+			request.addRequestProperty("vnf-image.vnf-image-uuid", vnf_image_uuid);
 
 			String rv = executor.get(request);
 			if(rv != null) {
@@ -2350,7 +2362,11 @@
 		try {
 			for (ResultData datum : resultDataList) {
 				String data_type = datum.getResourceType();
-				entity = new URL(datum.getResourceLink());
+				String resourceLink = datum.getResourceLink();
+				if(!resourceLink.isEmpty() && !resourceLink.toLowerCase().startsWith("http")) {
+					resourceLink = (new EchoRequest()).target_uri + resourceLink;
+				}
+				entity = new URL(resourceLink);
 			}
 		} catch (Exception e) {
 			throw new AAIServiceException(e);
@@ -2368,6 +2384,7 @@
 			URL requestUrl = null;
 
 			String requestId = UUID.randomUUID().toString();
+			StringBuilder errorStringBuilder = new StringBuilder();
 
 			try {
 
@@ -2449,16 +2466,14 @@
 	            	errorresponse.setRequestError(requestError);
 	            	throw new AAIServiceException(responseCode, errorresponse);
 	            } else {
-//
-//					StringBuilder stringBuilder = new StringBuilder("\n");
-//					String line = null;
-//					while( ( line = reader.readLine() ) != null ) {
-//						stringBuilder.append("\n").append( line );
-//					}
-//					LOG.info(stringBuilder.toString());
-//
-//	            	ErrorResponse errorresponse = mapper.readValue(stringBuilder.toString(), ErrorResponse.class);
-	            	ErrorResponse errorresponse = mapper.readValue(reader, ErrorResponse.class);
+//					StringBuilder errorStringBuilder = new StringBuilder();
+					String line = null;
+					while( ( line = reader.readLine() ) != null ) {
+						errorStringBuilder.append("\n").append( line );
+					}
+
+	            	ErrorResponse errorresponse = mapper.readValue(errorStringBuilder.toString(), ErrorResponse.class);
+//	            	ErrorResponse errorresponse = mapper.readValue(reader, ErrorResponse.class);
 	            	LOGwriteEndingTrace(responseCode, responseMessage, mapper.writeValueAsString(errorresponse));
 	            	throw new AAIServiceException(responseCode, errorresponse);
 	            }
@@ -2466,7 +2481,7 @@
 			} catch(AAIServiceException aaiexc) {
 				throw aaiexc;
 			} catch (Exception exc) {
-				LOG.warn("GET", exc);
+				LOG.warn(errorStringBuilder.toString(), exc);
 				throw new AAIServiceException(exc);
 			} finally {
 				if(inputStream != null){
@@ -2983,12 +2998,14 @@
 	        if(!key.contains(" = ")) {
 	        	if(isValidURL(key)) {
 	        		key = String.format("selflink = '%s'", key);
+	        	} else if(isValidURI(key)) {
+	        		key = String.format("resource-path = '%s'", key);
 	        	} else {
 	        		return response;
 	        	}
 	        }
 
-	        HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+	        HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 
 	        AAIRequest request = new SelfLinkRequest(type);
 	        if(nameValues.containsKey(PathRequest.RESOURCE_PATH.replaceAll("-", "_"))) {
@@ -3021,6 +3038,21 @@
 		    return true;
 		}
 
+	
+	public boolean isValidURI(String url) {
+
+		URI u = null;
+
+		try {
+			u = new URI(url);
+		} catch (URISyntaxException e) {
+			return false;
+		}
+
+		return true;
+	}
+
+	
 	@Override
 	protected boolean deleteRelationshipList(URL httpReqUrl, String json_text) throws AAIServiceException {
 		if(httpReqUrl ==  null) {
@@ -3146,6 +3178,9 @@
 			break;
 
 		default:
+			if(key.contains("selflink =")) {
+				break;
+			}
 			if(!key.contains(String.format("%s.", normResource))) {
 				key = rewriteKey(resource, key, ctx);
 			}
@@ -3171,6 +3206,9 @@
 			break;
 
 		default:
+			if(key.contains("selflink =")) {
+				break;
+			}
 			if(!key.contains(String.format("%s.", normResource))) {
 				key = rewriteKey(resource, key, ctx);
 			}
@@ -3196,6 +3234,9 @@
 			break;
 
 		default:
+			if(key.contains("selflink =")) {
+				break;
+			}
 			if(!key.contains(String.format("%s.", normResource))) {
 				key = rewriteKey(resource, key, ctx);
 			}
@@ -3221,6 +3262,9 @@
 			break;
 
 		default:
+			if(key.contains("selflink =")) {
+				break;
+			}
 			if(!key.contains(String.format("%s.", normResource))) {
 				key = rewriteKey(resource, key, ctx);
 			}
@@ -3258,15 +3302,16 @@
 			fieldAnnotatedNames.add(primaryId);
 		}
 
-		HashMap<String, String> nameValues = keyToHashMap(key, ctx);
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
 		Set<String> keyset = nameValues.keySet();
 		for(String keyName : keyset) {
 			if(keyName.contains("."))
 				continue;
 			else {
 				String tmpKeyName = keyName.replaceAll("_", "-");
-				if(fieldAnnotatedNames.contains(tmpKeyName)) {
-					key = key.replace(tmpKeyName, String.format("%s.%s", normResource, tmpKeyName));
+				String valueToSubstitute = String.format("%s =", tmpKeyName);
+				if(fieldAnnotatedNames.contains(tmpKeyName) && key.contains(valueToSubstitute)) {
+					key = key.replace(valueToSubstitute, String.format("%s.%s =", normResource, tmpKeyName));
 				}
 			}
 		}
@@ -3275,4 +3320,13 @@
 		return key;
 	}
 
+	@Override
+	public String getPathTemplateForResource(String resoourceName, String keys, SvcLogicContext ctx) throws MalformedURLException {
+		return AAIServiceUtils.getPathForResource(resoourceName, StringUtils.join(keys, " AND "), ctx);
+	}
+	
+	@Override
+	public boolean isDeprecatedFormat(String resource, HashMap<String, String> nameValues) {
+		return !AAIServiceUtils.isValidFormat(resource, nameValues);
+	}
 }
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIServiceActivator.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceActivator.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIServiceActivator.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceActivator.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIServiceException.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceException.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAIServiceException.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceException.java
diff --git a/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceUtils.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceUtils.java
new file mode 100644
index 0000000..bd2c724
--- /dev/null
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAIServiceUtils.java
@@ -0,0 +1,340 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * openECOMP : SDN-C
+ * ================================================================================
+ * Copyright (C) 2017 ONAP 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=========================================================
+ */
+
+package org.onap.ccsdk.sli.adaptors.aai;
+
+import java.lang.annotation.Annotation;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import javax.xml.bind.annotation.XmlType;
+
+import org.apache.commons.lang.StringUtils;
+import org.openecomp.aai.inventory.v11.Relationship;
+import org.openecomp.aai.inventory.v11.RelationshipData;
+import org.openecomp.aai.inventory.v11.RelationshipList;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class AAIServiceUtils {
+	
+	private static final Logger LOG = LoggerFactory.getLogger(AAIService.class);
+	
+	public static String getPrimaryIdFromClass(Class<? extends AAIDatum> resourceClass){
+		// 1. find class
+		getLogger().debug(resourceClass.getName());
+		AAIDatum instance = null;
+
+		try {
+			instance = resourceClass.newInstance();
+			
+			Annotation[] annotations = resourceClass.getAnnotations();
+			for(Annotation annotation : annotations) {
+				Class<? extends Annotation> anotationType = annotation.annotationType();
+				String annotationName = anotationType.getName();
+
+				// 2. find string property setters and getters for the lists
+				if("javax.xml.bind.annotation.XmlType".equals(annotationName)){
+					XmlType order = (XmlType)annotation;
+					String[]  values = order.propOrder();
+					for(String value : values) {
+						String id = camelCaseToDashedString(value);
+						return id;
+					}
+				}
+			}
+		} catch(Exception exc) {
+			
+		}
+		return null;
+	}
+
+	public static String getSecondaryIdFromClass(Class<? extends AAIDatum> resourceClass){
+		// 1. find class
+		getLogger().debug(resourceClass.getName());
+		AAIDatum instance = null;
+
+		try {
+			instance = resourceClass.newInstance();
+			
+			Annotation[] annotations = resourceClass.getAnnotations();
+			for(Annotation annotation : annotations) {
+				Class<? extends Annotation> anotationType = annotation.annotationType();
+				String annotationName = anotationType.getName();
+
+				// 2. find string property setters and getters for the lists
+				if("javax.xml.bind.annotation.XmlType".equals(annotationName)){
+					boolean primaryIdFound = false;
+					XmlType order = (XmlType)annotation;
+					String[]  values = order.propOrder();
+					for(String value : values) {
+						String id = camelCaseToDashedString(value);
+						if(primaryIdFound) {
+							return id;
+						} else {
+							primaryIdFound = true;
+						}
+					}
+				}
+			}
+		} catch(Exception exc) {
+			
+		}
+		return null;
+	}
+
+	
+	private static Logger getLogger() {
+		return LOG;
+	}
+
+	
+	private static final String regex = "([A-Z][a-z,0-9]+)";
+	private static final String replacement = "-$1";
+
+	public static String camelCaseToDashedString(String propOrder) {
+		return propOrder.replaceAll(regex, replacement).toLowerCase();
+	}
+	
+	public static HashMap<String,String> keyToHashMap(String key,	SvcLogicContext ctx) {
+		if (key == null) {
+			return (null);
+		}
+
+		getLogger().debug("Converting key [" + key + "] to where clause");
+
+		if (key.startsWith("'") && key.endsWith("'")) {
+			key = key.substring(1, key.length() - 1);
+
+			getLogger().debug("Stripped outer single quotes - key is now [" + key + "]");
+		}
+
+		String[] keyTerms = key.split("\\s+");
+
+		StringBuffer whereBuff = new StringBuffer();
+		String term1 = null;
+		String op = null;
+		String term2 = null;
+		HashMap<String, String> results = new HashMap<String, String>();
+
+		for (int i = 0; i < keyTerms.length; i++) {
+			if (term1 == null) {
+				if ("and".equalsIgnoreCase(keyTerms[i])
+						|| "or".equalsIgnoreCase(keyTerms[i])) {
+					// Skip over ADD/OR
+				} else {
+					term1 = resolveTerm(keyTerms[i], ctx);
+				}
+			} else if (op == null) {
+				if ("==".equals(keyTerms[i])) {
+					op = "=";
+				} else {
+					op = keyTerms[i];
+				}
+			} else {
+				term2 = resolveTerm(keyTerms[i], ctx);
+				term2 = term2.trim().replace("'", "").replace("$", "").replace("'", "");
+				results.put(term1,  term2);
+
+				term1 = null;
+				op = null;
+				term2 = null;
+			}
+		}
+
+		return (results);
+	}
+	
+	private static String resolveTerm(String term, SvcLogicContext ctx) {
+		if (term == null) {
+			return (null);
+		}
+
+		getLogger().debug("resolveTerm: term is " + term);
+
+		if (term.startsWith("$") && (ctx != null)) {
+			// Resolve any index variables.
+
+			return ("'" + resolveCtxVariable(term.substring(1), ctx) + "'");
+		} else if (term.startsWith("'") || term.startsWith("\"")) {
+			return (term);
+		} else {
+			return (term.replaceAll("-", "_"));
+
+		}
+	}
+	
+	private static String resolveCtxVariable(String ctxVarName, SvcLogicContext ctx) {
+
+		if (ctxVarName.indexOf('[') == -1) {
+			// Ctx variable contains no arrays
+			return (ctx.getAttribute(ctxVarName));
+		}
+
+		// Resolve any array references
+		StringBuffer sbuff = new StringBuffer();
+		String[] ctxVarParts = ctxVarName.split("\\[");
+		sbuff.append(ctxVarParts[0]);
+		for (int i = 1; i < ctxVarParts.length; i++) {
+			if (ctxVarParts[i].startsWith("$")) {
+				int endBracketLoc = ctxVarParts[i].indexOf("]");
+				if (endBracketLoc == -1) {
+					// Missing end bracket ... give up parsing
+					getLogger().warn("Variable reference " + ctxVarName
+							+ " seems to be missing a ']'");
+					return (ctx.getAttribute(ctxVarName));
+				}
+
+				String idxVarName = ctxVarParts[i].substring(1, endBracketLoc);
+				String remainder = ctxVarParts[i].substring(endBracketLoc);
+
+				sbuff.append("[");
+				sbuff.append(ctx.getAttribute(idxVarName));
+				sbuff.append(remainder);
+
+			} else {
+				// Index is not a variable reference
+				sbuff.append("[");
+				sbuff.append(ctxVarParts[i]);
+			}
+		}
+
+		return (ctx.getAttribute(sbuff.toString()));
+	}
+	
+	public static void populateRelationshipDataFromPath(RelationshipList rl) throws URISyntaxException {
+		List<Relationship> list =  rl.getRelationship();
+		if(list != null && !list.isEmpty()) {
+			for(Relationship relationship : list) {
+				if(relationship.getRelationshipData().isEmpty()){
+					String link = relationship.getRelatedLink();
+					URI uri = new URI(link);
+						link = uri.getPath();
+					HashMap<String,String> contributors = pathToHashMap(link);
+					for(String key : contributors.keySet()) {
+						RelationshipData rd = new RelationshipData();
+						rd.setRelationshipKey(key);
+						rd.setRelationshipValue(contributors.get(key));
+						relationship.getRelationshipData().add(rd);
+					}
+				}
+			}
+		}
+	}
+	
+	protected static HashMap<String,String> pathToHashMap(String path) {
+		HashMap<String, String> nameValues = new  HashMap<String, String>();
+		
+		String[] split = path.split("/");
+		
+		LinkedList<String> list = new LinkedList<String>( Arrays.asList(split));
+		Iterator<String> it = list.iterator();
+		
+		while(it.hasNext()) {
+			String tag = it.next();
+			if(!tag.isEmpty()) {
+				if(AAIRequest.getResourceNames().contains(tag)){
+					LOG.info(tag);
+					// get the class from tag
+					Class<? extends AAIDatum> clazz = null;
+					try {
+						clazz = AAIRequest.getClassFromResource(tag);
+						String fieldName = AAIServiceUtils.getPrimaryIdFromClass(clazz);
+
+						String value = it.next();
+						if(!StringUtils.isEmpty(value)){
+							nameValues.put(String.format("%s.%s", tag, fieldName), value);
+							switch(tag) {
+							case "cloud-region":
+							case "entitlement":
+							case "license":
+							case "route-target":
+							case "service-capability":
+							case "ctag-pool":
+								String secondaryFieldName = AAIServiceUtils.getSecondaryIdFromClass(clazz);
+								if(secondaryFieldName != null) {
+									value = it.next();
+									nameValues.put(String.format("%s.%s", tag, secondaryFieldName), value);	
+								}
+								break;
+							default:
+								break;
+							}
+						}
+					} catch (ClassNotFoundException exc) {
+						LOG.info("Caught exception", exc);
+					}
+				}
+			}
+		}
+		return nameValues;
+	}
+	
+	public static String getPathForResource(String resource, String key, SvcLogicContext ctx ) throws MalformedURLException{
+		HashMap<String, String> nameValues = AAIServiceUtils.keyToHashMap(key, ctx);
+		AAIRequest request = AAIRequest.createRequest(resource, nameValues);
+		
+		for(String name : nameValues.keySet()) {
+			request.addRequestProperty(name, nameValues.get(name));
+		}
+		return request.getRequestPath();
+	}
+	
+	public static boolean isValidFormat(String resource, HashMap<String, String> nameValues) {
+
+		switch(resource){
+		case "formatted-query":
+		case "generic-query":
+		case "named-query":
+		case "nodes-query":
+		case "linterface":
+		case "l2-bridge-sbg":
+		case "l2-bridge-bgf":
+		case "echo":
+		case "test":
+			return true;
+		}
+		if(resource.contains(":")) {
+			resource = resource.substring(0, resource.indexOf(":"));
+		}
+
+		Set<String> keys = nameValues.keySet();
+		for(String key : keys) {
+			if(!key.contains(".")) {
+				if("depth".equals(key) || "related-to".equals(key) || "related_to".equals(key) || "related-link".equals(key) || "related_link".equals(key) || "selflink".equals(key))
+					continue;
+				else {
+					getLogger().warn(String.format("key %s is incompatible with resource type '%s'", key, resource));
+				}
+			}
+		}
+		return true;
+	}
+}
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAITrinityService.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAITrinityService.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/AAITrinityService.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/AAITrinityService.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/CloudRegionRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/CloudRegionRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/CloudRegionRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/CloudRegionRequest.java
index 0de0d2b..8086228 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/CloudRegionRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/CloudRegionRequest.java
@@ -29,7 +29,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.CloudRegion;
+import org.openecomp.aai.inventory.v11.CloudRegion;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/CustomQueryRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/CustomQueryRequest.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/CustomQueryRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/CustomQueryRequest.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/EchoRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/EchoRequest.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/EchoRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/EchoRequest.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericQueryRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericQueryRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericQueryRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericQueryRequest.java
index 476aed9..b509650 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericQueryRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericQueryRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.ResultData;
+import org.openecomp.aai.inventory.v11.ResultData;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericRequest.java
index 427ea7e..1d3cb00 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericRequest.java
@@ -32,8 +32,8 @@
 import javax.xml.bind.annotation.XmlElement;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.L3Network;
-import org.openecomp.aai.inventory.v10.L3Networks;
+import org.openecomp.aai.inventory.v11.L3Network;
+import org.openecomp.aai.inventory.v11.L3Networks;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericVnfRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericVnfRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericVnfRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericVnfRequest.java
index 3915940..3f33ff6 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/GenericVnfRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/GenericVnfRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.GenericVnf;
+import org.openecomp.aai.inventory.v11.GenericVnf;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java
new file mode 100644
index 0000000..6cddfdb
--- /dev/null
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java
@@ -0,0 +1,212 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * openECOMP : SDN-C
+ * ================================================================================
+ * Copyright (C) 2017 ONAP 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=========================================================
+ */
+
+package org.onap.ccsdk.sli.adaptors.aai;
+
+import java.io.UnsupportedEncodingException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Properties;
+
+import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
+import org.openecomp.aai.inventory.v11.L3InterfaceIpv4AddressList;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+public class L3InterfaceIpv4AddressListRequest extends AAIRequest {
+
+	/*
+	 * Note: there are 3 possible paths:
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 * /inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+	 */
+
+	public static final String L3_INTERFACE_IPV4_ADDRESS_LIST_PATH	=     "org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list";
+	public static final String VLAN_L3_INTERFACE_IPV4_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list";
+
+	private final String l3_interface_ipv4_address_list_path;
+	private final String vlan_l3_interface_ipv4_address_list_path;
+
+	public static final String L3_INTERFACE_IPV4_ADDRESS	= "l3-interface-ipv4-address";
+	public static final String LIST_L3_INTERFACE_IPV4_ADDRESS	= "l3-interface-ipv4-address-list.l3-interface-ipv4-address";
+	public static final String VLAN_INTERFACE	= "vlan-interface";
+	public static final String VLAN_VLAN_INTERFACE	= "vlan.vlan-interface";
+
+	public L3InterfaceIpv4AddressListRequest() {
+		l3_interface_ipv4_address_list_path = configProperties.getProperty(L3_INTERFACE_IPV4_ADDRESS_LIST_PATH);
+		vlan_l3_interface_ipv4_address_list_path = configProperties.getProperty(VLAN_L3_INTERFACE_IPV4_ADDRESS_LIST_PATH);
+	}
+
+	@Override
+	public URL getRequestQueryUrl(String method) throws UnsupportedEncodingException, MalformedURLException {
+		return this.getRequestUrl(method, null);
+	}
+
+	@Override
+	public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
+
+		String request_url = target_uri+l3_interface_ipv4_address_list_path;
+
+		if(requestProperties.containsKey(VLAN_INTERFACE) || requestProperties.containsKey(VLAN_VLAN_INTERFACE)){
+			request_url = target_uri+vlan_l3_interface_ipv4_address_list_path;
+			request_url = processVLanRequestPathData(request_url, requestProperties);
+		}
+
+		request_url = processPathData(request_url, requestProperties);
+		request_url = LInterfaceRequest.processPathData(request_url, requestProperties);
+//		request_url = GenericVnfRequest.processPathData(request_url, requestProperties);
+
+		if(resourceVersion != null) {
+			request_url = request_url +"?resource-version="+resourceVersion;
+		}
+		URL http_req_url =	new URL(request_url);
+
+		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
+
+		return http_req_url;
+	}
+
+	public static String processVLanRequestPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
+		String key = null;
+
+		if(requestProperties.containsKey(VLAN_VLAN_INTERFACE)) {
+			key = VLAN_VLAN_INTERFACE;
+		} else if(requestProperties.containsKey(VLAN_INTERFACE)) {
+			key = VLAN_INTERFACE;
+		} else {
+			aaiService.logKeyError(String.format("%s,%s", VLAN_INTERFACE, VLAN_VLAN_INTERFACE));
+		}
+
+		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
+
+		request_url = request_url.replace("{vlan-interface}", encoded_vnf) ;
+		aaiService.LOGwriteDateTrace("vlan-interface", requestProperties.getProperty(key));
+		return request_url;
+	}
+
+	@Override
+	public String toJSONString() {
+		ObjectMapper mapper = getObjectMapper();
+		L3InterfaceIpv4AddressList vnfc = (L3InterfaceIpv4AddressList)requestDatum;
+		String json_text = null;
+		try {
+			json_text = mapper.writeValueAsString(vnfc);
+		} catch (JsonProcessingException exc) {
+			handleException(this, exc);
+			return null;
+		}
+		return json_text;
+	}
+
+	@Override
+	public String[] getArgsList() {
+		String[] args =
+			{
+				L3_INTERFACE_IPV4_ADDRESS,
+				LIST_L3_INTERFACE_IPV4_ADDRESS,
+				VLAN_INTERFACE,
+				VLAN_VLAN_INTERFACE,
+				LInterfaceRequest.INTERFACE_NAME,
+				LInterfaceRequest.LINTERFACE_INTERFACE_NAME,
+				"generic-vnf.vnf-id"
+			};
+
+		return args;
+	}
+
+	@Override
+	public Class<? extends AAIDatum> getModelClass() {
+		return L3InterfaceIpv4AddressList.class;
+	}
+
+	public static String processPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
+		String key = L3_INTERFACE_IPV4_ADDRESS;
+		if(requestProperties.containsKey(LIST_L3_INTERFACE_IPV4_ADDRESS)) {
+			key = LIST_L3_INTERFACE_IPV4_ADDRESS;
+		}
+
+		if(!requestProperties.containsKey(key)) {
+			aaiService.logKeyError(String.format("%s,%s", L3_INTERFACE_IPV4_ADDRESS, LIST_L3_INTERFACE_IPV4_ADDRESS));
+		}
+
+		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
+
+		request_url = request_url.replace("{l3-interface-ipv4-address}", encoded_vnf) ;
+
+		aaiService.LOGwriteDateTrace("l3-interface-ipv4-address", requestProperties.getProperty(key));
+		return request_url;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * @see org.onap.ccsdk.sli.adaptors.aai.PathConfigurator#configurePath(java.lang.String)
+	 */
+//	@Override
+//	public void processRequestPathValues(Map<String, String> nameValues) {
+//		String[] paths =
+//		{
+//		 "/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
+//		 "/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
+//		 "/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
+//		 "/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}"
+//		};
+//
+//		List<String>keys = new LinkedList<String>();
+//		keys.addAll(nameValues.keySet());
+//		for(String key : keys) {
+//			if(key.contains(".")) {
+//				key = key.replaceAll("_", "-");
+//				if(!LIST_L3_INTERFACE_IPV4_ADDRESS.equals(key)) {
+//					int index = key.indexOf(".");
+//					String resource = key.substring(0, index);
+//					AAIRequest rx = createRequest(resource, nameValues);
+//					if(rx != null) {
+//						pathElements.add(rx);
+//					}
+//				}
+//			}
+//		}
+//		super.processRequestPathValues(nameValues);
+//	}
+//	List<AAIRequest> pathElements = new LinkedList<AAIRequest>();
+
+}
diff --git a/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java
new file mode 100644
index 0000000..b8fdda9
--- /dev/null
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java
@@ -0,0 +1,179 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * openECOMP : SDN-C
+ * ================================================================================
+ * Copyright (C) 2017 ONAP 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=========================================================
+ */
+
+package org.onap.ccsdk.sli.adaptors.aai;
+
+import java.io.UnsupportedEncodingException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Properties;
+
+import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
+import org.openecomp.aai.inventory.v11.L3InterfaceIpv6AddressList;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+public class L3InterfaceIpv6AddressListRequest extends AAIRequest {
+
+	/*
+	 * Note: there are 3 possible paths:
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 * /inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+	 */
+
+	public static final String L3_INTERFACE_IPV6_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list";
+	public static final String VLAN_L3_INTERFACE_IPV6_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list";
+
+	private final String l3_interface_ipv6_address_list_path;
+	private final String vlan_l3_interface_ipv6_address_list_path;
+
+	public static final String L3_INTERFACE_IPV6_ADDRESS		= "l3-interface-ipv6-address";
+	public static final String LIST_L3_INTERFACE_IPV6_ADDRESS	= "l3-interface-ipv6-address-list.l3-interface-ipv6-address";
+	public static final String VLAN_INTERFACE	= "vlan-interface";
+	public static final String VLAN_VLAN_INTERFACE	= "vlan.vlan-interface";
+
+	public L3InterfaceIpv6AddressListRequest() {
+		l3_interface_ipv6_address_list_path = configProperties.getProperty(L3_INTERFACE_IPV6_ADDRESS_LIST_PATH);
+		vlan_l3_interface_ipv6_address_list_path = configProperties.getProperty(VLAN_L3_INTERFACE_IPV6_ADDRESS_LIST_PATH);
+	}
+
+	@Override
+	public URL getRequestQueryUrl(String method) throws UnsupportedEncodingException, MalformedURLException {
+		return this.getRequestUrl(method, null);
+	}
+
+	@Override
+	public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
+
+		String request_url = target_uri+l3_interface_ipv6_address_list_path;
+
+		if(requestProperties.containsKey(VLAN_INTERFACE) || requestProperties.containsKey(VLAN_VLAN_INTERFACE)){
+			request_url = target_uri+vlan_l3_interface_ipv6_address_list_path;
+			request_url = processVLanRequestPathData(request_url, requestProperties);
+		}
+
+		request_url = processPathData(request_url, requestProperties);
+		request_url = LInterfaceRequest.processPathData(request_url, requestProperties);
+//		request_url = GenericVnfRequest.processPathData(request_url, requestProperties);
+
+		if(resourceVersion != null) {
+			request_url = request_url +"?resource-version="+resourceVersion;
+		}
+		URL http_req_url =	new URL(request_url);
+
+		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
+
+		return http_req_url;
+	}
+
+	public static String processVLanRequestPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
+		String key = null;
+
+		if(requestProperties.containsKey(VLAN_VLAN_INTERFACE)) {
+			key = VLAN_VLAN_INTERFACE;
+		} else if(requestProperties.containsKey(VLAN_INTERFACE)) {
+			key = VLAN_INTERFACE;
+		} else {
+			aaiService.logKeyError(String.format("%s,%s", VLAN_INTERFACE, VLAN_VLAN_INTERFACE));
+		}
+
+		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
+
+		request_url = request_url.replace("{vlan-interface}", encoded_vnf) ;
+		aaiService.LOGwriteDateTrace("vlan-interface", requestProperties.getProperty(key));
+		return request_url;
+	}
+
+	@Override
+	public String toJSONString() {
+		ObjectMapper mapper = getObjectMapper();
+		L3InterfaceIpv6AddressList vnfc = (L3InterfaceIpv6AddressList)requestDatum;
+		String json_text = null;
+		try {
+			json_text = mapper.writeValueAsString(vnfc);
+		} catch (JsonProcessingException exc) {
+			handleException(this, exc);
+			return null;
+		}
+		return json_text;
+	}
+
+	@Override
+	public String[] getArgsList() {
+		String[] args =
+		{
+			L3_INTERFACE_IPV6_ADDRESS,
+			LIST_L3_INTERFACE_IPV6_ADDRESS,
+			VLAN_INTERFACE,
+			VLAN_VLAN_INTERFACE,
+			LInterfaceRequest.INTERFACE_NAME,
+			LInterfaceRequest.LINTERFACE_INTERFACE_NAME,
+			"generic-vnf.vnf-id"
+
+		};
+
+		return args;
+	}
+
+	@Override
+	public Class<? extends AAIDatum> getModelClass() {
+		return L3InterfaceIpv6AddressList.class;
+	}
+
+	public static String processPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
+		String key = L3_INTERFACE_IPV6_ADDRESS;
+		if(requestProperties.containsKey(LIST_L3_INTERFACE_IPV6_ADDRESS)) {
+			key = LIST_L3_INTERFACE_IPV6_ADDRESS;
+		}
+
+		if(!requestProperties.containsKey(key)) {
+			aaiService.logKeyError(String.format("%s,%s", L3_INTERFACE_IPV6_ADDRESS, LIST_L3_INTERFACE_IPV6_ADDRESS));
+		}
+
+		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
+
+		request_url = request_url.replace("{l3-interface-ipv6-address}", encoded_vnf) ;
+
+		aaiService.LOGwriteDateTrace("l3-interface-ipv6-address", requestProperties.getProperty(key));
+		return request_url;
+	}
+}
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LInterfaceRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LInterfaceRequest.java
similarity index 99%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LInterfaceRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LInterfaceRequest.java
index a9da4e4..1accc82 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LInterfaceRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LInterfaceRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.LInterface;
+import org.openecomp.aai.inventory.v11.LInterface;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LagInterfacePnfRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LagInterfacePnfRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LagInterfacePnfRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LagInterfacePnfRequest.java
index 5f84553..f5bbde7 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/LagInterfacePnfRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/LagInterfacePnfRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.LagInterface;
+import org.openecomp.aai.inventory.v11.LagInterface;
 import org.slf4j.LoggerFactory;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NamedQueryRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NamedQueryRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NamedQueryRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NamedQueryRequest.java
index e1528a6..c93b0f1 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NamedQueryRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NamedQueryRequest.java
@@ -30,7 +30,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.InventoryResponseItems;
+import org.openecomp.aai.inventory.v11.InventoryResponseItems;
 
 import com.fasterxml.jackson.annotation.JsonInclude.Include;
 import com.fasterxml.jackson.core.JsonProcessingException;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NodesQueryRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NodesQueryRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NodesQueryRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NodesQueryRequest.java
index ba4da3d..c6aeb31 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/NodesQueryRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/NodesQueryRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.SearchResults;
+import org.openecomp.aai.inventory.v11.SearchResults;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfacePnfRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfacePnfRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfacePnfRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfacePnfRequest.java
index ea669f2..c4d078b 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfacePnfRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfacePnfRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.PInterface;
+import org.openecomp.aai.inventory.v11.PInterface;
 import org.slf4j.LoggerFactory;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfaceRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfaceRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfaceRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfaceRequest.java
index 378e125..8a040b2 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PInterfaceRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PInterfaceRequest.java
@@ -26,7 +26,7 @@
 import java.net.URL;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.PInterface;
+import org.openecomp.aai.inventory.v11.PInterface;
 import org.slf4j.LoggerFactory;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PathRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PathRequest.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PathRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PathRequest.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PhysicalLinkRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PhysicalLinkRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PhysicalLinkRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PhysicalLinkRequest.java
index 4db95df..94dfdaf 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/PhysicalLinkRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/PhysicalLinkRequest.java
@@ -26,7 +26,7 @@
 import java.net.URL;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.PhysicalLink;
+import org.openecomp.aai.inventory.v11.PhysicalLink;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/RelationshipRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/RelationshipRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/RelationshipRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/RelationshipRequest.java
index 8c3d107..9ae635c 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/RelationshipRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/RelationshipRequest.java
@@ -26,7 +26,7 @@
 import java.net.URL;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.RelationshipList;
+import org.openecomp.aai.inventory.v11.RelationshipList;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SelfLinkRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SelfLinkRequest.java
similarity index 92%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SelfLinkRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SelfLinkRequest.java
index e4fd3d9..95b5c35 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SelfLinkRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SelfLinkRequest.java
@@ -23,6 +23,7 @@
 
 import java.io.UnsupportedEncodingException;
 import java.net.MalformedURLException;
+import java.net.URI;
 import java.net.URL;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
@@ -48,7 +49,14 @@
 		String request_url = null;
 		
 		request_url = requestProperties.getProperty(SELFLINK);
-		
+		try {
+			URI uri = new URI(request_url);
+			if(uri.getHost() == null) {
+				request_url = target_uri + request_url;
+			}
+		} catch(Exception exc) {
+			LOG.error("SelfLinkRequest.getRequestUrl", exc);
+		}
 		String query = null;
 		
 		if(request_url.contains("?")) {
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SubInterfaceRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SubInterfaceRequest.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SubInterfaceRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SubInterfaceRequest.java
index 3cbe187..9e0a6d5 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/SubInterfaceRequest.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/SubInterfaceRequest.java
@@ -27,7 +27,7 @@
 import java.util.Properties;
 
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.LInterface;
+import org.openecomp.aai.inventory.v11.LInterface;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/UpdateRequest.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/UpdateRequest.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/UpdateRequest.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/UpdateRequest.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/AAIDatum.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/AAIDatum.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/AAIDatum.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/AAIDatum.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/EchoResponse.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/EchoResponse.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/EchoResponse.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/EchoResponse.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ErrorResponse.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ErrorResponse.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ErrorResponse.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ErrorResponse.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/RequestError.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/RequestError.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/RequestError.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/RequestError.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResourceVersion.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResourceVersion.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResourceVersion.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResourceVersion.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResponseMessage.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResponseMessage.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResponseMessage.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResponseMessage.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResponseMessages.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResponseMessages.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ResponseMessages.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ResponseMessages.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ServiceException.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ServiceException.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/ServiceException.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/ServiceException.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/SubInterface.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/SubInterface.java
similarity index 97%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/SubInterface.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/SubInterface.java
index f155078..14ed866 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/SubInterface.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/SubInterface.java
@@ -31,8 +31,8 @@
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 
-import org.openecomp.aai.inventory.v10.RelationshipList;
-import org.openecomp.aai.inventory.v10.Vlans;
+import org.openecomp.aai.inventory.v11.RelationshipList;
+import org.openecomp.aai.inventory.v11.Vlans;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @Generated("org.jsonschema2pojo")
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/Variables.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/Variables.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/Variables.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/Variables.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/notify/KeyDatum.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/notify/KeyDatum.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/notify/KeyDatum.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/notify/KeyDatum.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/notify/NotifyEvent.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/notify/NotifyEvent.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/notify/NotifyEvent.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/notify/NotifyEvent.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Flavor.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Flavor.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Flavor.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Flavor.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Host.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Host.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Host.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Host.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Image.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Image.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Image.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Image.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/IpAddress.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/IpAddress.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/IpAddress.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/IpAddress.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Relationship.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Relationship.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/Relationship.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/Relationship.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/RelationshipDatum.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/RelationshipDatum.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/RelationshipDatum.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/RelationshipDatum.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/RelationshipList.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/RelationshipList.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/RelationshipList.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/RelationshipList.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/VServer.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/VServer.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/data/v1507/VServer.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/data/v1507/VServer.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/FormattedQueryRequestData.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/FormattedQueryRequestData.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/FormattedQueryRequestData.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/FormattedQueryRequestData.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/FormattedQueryResultList.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/FormattedQueryResultList.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/FormattedQueryResultList.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/FormattedQueryResultList.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/InstanceFilter.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/InstanceFilter.java
similarity index 94%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/InstanceFilter.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/InstanceFilter.java
index ccd6372..aa32847 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/InstanceFilter.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/InstanceFilter.java
@@ -33,10 +33,10 @@
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 
-import org.openecomp.aai.inventory.v10.L3Network;
-import org.openecomp.aai.inventory.v10.Pnf;
-import org.openecomp.aai.inventory.v10.LogicalLink;
-import org.openecomp.aai.inventory.v10.ServiceInstance;
+import org.openecomp.aai.inventory.v11.L3Network;
+import org.openecomp.aai.inventory.v11.Pnf;
+import org.openecomp.aai.inventory.v11.LogicalLink;
+import org.openecomp.aai.inventory.v11.ServiceInstance;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @Generated("org.jsonschema2pojo")
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/InstanceFilters.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/InstanceFilters.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/InstanceFilters.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/InstanceFilters.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/NamedQuery.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/NamedQuery.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/NamedQuery.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/NamedQuery.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/NamedQueryData.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/NamedQueryData.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/NamedQueryData.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/NamedQueryData.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/QueryParameters.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/QueryParameters.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/QueryParameters.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/QueryParameters.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/Results.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/Results.java
similarity index 98%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/Results.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/Results.java
index ff2269a..45d8035 100644
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/query/Results.java
+++ b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/query/Results.java
@@ -27,7 +27,7 @@
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.openecomp.aai.inventory.v10.*;
+import org.openecomp.aai.inventory.v11.*;
 
 
 @XmlAccessorType(XmlAccessType.FIELD)
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/Action.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/Action.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/Action.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/Action.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/ActionDatum.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/ActionDatum.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/ActionDatum.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/ActionDatum.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/Update.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/Update.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/Update.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/Update.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/UpdateNodeKey.java b/aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/UpdateNodeKey.java
similarity index 100%
rename from aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/update/UpdateNodeKey.java
rename to aai-service/provider/src/main/java/org/onap/ccsdk/sli/adaptors/aai/update/UpdateNodeKey.java
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java b/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java
deleted file mode 100644
index e1431be..0000000
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv4AddressListRequest.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * Copyright (C) 2017 ONAP 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=========================================================
- */
-
-package org.onap.ccsdk.sli.adaptors.aai;
-
-import java.io.UnsupportedEncodingException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.Properties;
-
-import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.L3InterfaceIpv4AddressList;
-
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-public class L3InterfaceIpv4AddressListRequest extends AAIRequest {
-
-	/*
-	 * Note: there are 3 possible paths:
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 * aaiv7:inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-	 */
-
-	public static final String L3_INTERFACE_IPV4_ADDRESS_LIST_PATH	=     "org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv4.address.list";
-	public static final String VLAN_L3_INTERFACE_IPV4_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv4.address.list";
-
-	private final String l3_interface_ipv4_address_list_path;
-	private final String vlan_l3_interface_ipv4_address_list_path;
-
-	public static final String L3_INTERFACE_IPV4_ADDRESS	= "l3-interface-ipv4-address";
-	public static final String LIST_L3_INTERFACE_IPV4_ADDRESS	= "l3-interface-ipv4-address-list.l3-interface-ipv4-address";
-	public static final String VLAN_INTERFACE	= "vlan-interface";
-	public static final String VLAN_VLAN_INTERFACE	= "vlan.vlan-interface";
-
-	public L3InterfaceIpv4AddressListRequest() {
-		l3_interface_ipv4_address_list_path = configProperties.getProperty(L3_INTERFACE_IPV4_ADDRESS_LIST_PATH);
-		vlan_l3_interface_ipv4_address_list_path = configProperties.getProperty(VLAN_L3_INTERFACE_IPV4_ADDRESS_LIST_PATH);
-	}
-
-	@Override
-	public URL getRequestQueryUrl(String method) throws UnsupportedEncodingException, MalformedURLException {
-		return this.getRequestUrl(method, null);
-	}
-
-	@Override
-	public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
-
-		String request_url = target_uri+l3_interface_ipv4_address_list_path;
-
-		if(requestProperties.containsKey(VLAN_INTERFACE) || requestProperties.containsKey(VLAN_VLAN_INTERFACE)){
-			request_url = target_uri+vlan_l3_interface_ipv4_address_list_path;
-			request_url = processVLanRequestPathData(request_url, requestProperties);
-		}
-
-		request_url = processPathData(request_url, requestProperties);
-		request_url = LInterfaceRequest.processPathData(request_url, requestProperties);
-//		request_url = GenericVnfRequest.processPathData(request_url, requestProperties);
-
-		if(resourceVersion != null) {
-			request_url = request_url +"?resource-version="+resourceVersion;
-		}
-		URL http_req_url =	new URL(request_url);
-
-		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
-
-		return http_req_url;
-	}
-
-	public static String processVLanRequestPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
-		String key = null;
-
-		if(requestProperties.containsKey(VLAN_VLAN_INTERFACE)) {
-			key = VLAN_VLAN_INTERFACE;
-		} else if(requestProperties.containsKey(VLAN_INTERFACE)) {
-			key = VLAN_INTERFACE;
-		} else {
-			aaiService.logKeyError(String.format("%s,%s", VLAN_INTERFACE, VLAN_VLAN_INTERFACE));
-		}
-
-		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
-
-		request_url = request_url.replace("{vlan-interface}", encoded_vnf) ;
-		aaiService.LOGwriteDateTrace("vlan-interface", requestProperties.getProperty(key));
-		return request_url;
-	}
-
-	@Override
-	public String toJSONString() {
-		ObjectMapper mapper = getObjectMapper();
-		L3InterfaceIpv4AddressList vnfc = (L3InterfaceIpv4AddressList)requestDatum;
-		String json_text = null;
-		try {
-			json_text = mapper.writeValueAsString(vnfc);
-		} catch (JsonProcessingException exc) {
-			handleException(this, exc);
-			return null;
-		}
-		return json_text;
-	}
-
-	@Override
-	public String[] getArgsList() {
-		String[] args =
-			{
-				L3_INTERFACE_IPV4_ADDRESS,
-				LIST_L3_INTERFACE_IPV4_ADDRESS,
-				VLAN_INTERFACE,
-				VLAN_VLAN_INTERFACE,
-				LInterfaceRequest.INTERFACE_NAME,
-				LInterfaceRequest.LINTERFACE_INTERFACE_NAME,
-				"generic-vnf.vnf-id"
-			};
-
-		return args;
-	}
-
-	@Override
-	public Class<? extends AAIDatum> getModelClass() {
-		return L3InterfaceIpv4AddressList.class;
-	}
-
-	public static String processPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
-		String key = L3_INTERFACE_IPV4_ADDRESS;
-		if(requestProperties.containsKey(LIST_L3_INTERFACE_IPV4_ADDRESS)) {
-			key = LIST_L3_INTERFACE_IPV4_ADDRESS;
-		}
-
-		if(!requestProperties.containsKey(key)) {
-			aaiService.logKeyError(String.format("%s,%s", L3_INTERFACE_IPV4_ADDRESS, LIST_L3_INTERFACE_IPV4_ADDRESS));
-		}
-
-		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
-
-		request_url = request_url.replace("{l3-interface-ipv4-address}", encoded_vnf) ;
-
-		aaiService.LOGwriteDateTrace("l3-interface-ipv4-address", requestProperties.getProperty(key));
-		return request_url;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * @see org.onap.ccsdk.sli.adaptors.aai.PathConfigurator#configurePath(java.lang.String)
-	 */
-//	@Override
-//	public void processRequestPathValues(Map<String, String> nameValues) {
-//		String[] paths =
-//		{
-//		 "/aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
-//		 "/aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
-//		 "/aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}",
-//		 "/aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}"
-//		};
-//
-//		List<String>keys = new LinkedList<String>();
-//		keys.addAll(nameValues.keySet());
-//		for(String key : keys) {
-//			if(key.contains(".")) {
-//				key = key.replaceAll("_", "-");
-//				if(!LIST_L3_INTERFACE_IPV4_ADDRESS.equals(key)) {
-//					int index = key.indexOf(".");
-//					String resource = key.substring(0, index);
-//					AAIRequest rx = createRequest(resource, nameValues);
-//					if(rx != null) {
-//						pathElements.add(rx);
-//					}
-//				}
-//			}
-//		}
-//		super.processRequestPathValues(nameValues);
-//	}
-//	List<AAIRequest> pathElements = new LinkedList<AAIRequest>();
-
-}
diff --git a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java b/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java
deleted file mode 100644
index 5cdc0de..0000000
--- a/aai-service/provider/src/main/java/org/onap/sli/adaptors/aai/L3InterfaceIpv6AddressListRequest.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * Copyright (C) 2017 ONAP 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=========================================================
- */
-
-package org.onap.ccsdk.sli.adaptors.aai;
-
-import java.io.UnsupportedEncodingException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.Properties;
-
-import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.L3InterfaceIpv6AddressList;
-
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-public class L3InterfaceIpv6AddressListRequest extends AAIRequest {
-
-	/*
-	 * Note: there are 3 possible paths:
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * /aai/v7/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/cloud-infrastructure/cloud-regions/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 * aaiv7:inventory/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-	 */
-
-	public static final String L3_INTERFACE_IPV6_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.l3.interface.ipv6.address.list";
-	public static final String VLAN_L3_INTERFACE_IPV6_ADDRESS_LIST_PATH	= "org.onap.ccsdk.sli.adaptors.aai.path.vlan.l3.interface.ipv6.address.list";
-
-	private final String l3_interface_ipv6_address_list_path;
-	private final String vlan_l3_interface_ipv6_address_list_path;
-
-	public static final String L3_INTERFACE_IPV6_ADDRESS		= "l3-interface-ipv6-address";
-	public static final String LIST_L3_INTERFACE_IPV6_ADDRESS	= "l3-interface-ipv6-address-list.l3-interface-ipv6-address";
-	public static final String VLAN_INTERFACE	= "vlan-interface";
-	public static final String VLAN_VLAN_INTERFACE	= "vlan.vlan-interface";
-
-	public L3InterfaceIpv6AddressListRequest() {
-		l3_interface_ipv6_address_list_path = configProperties.getProperty(L3_INTERFACE_IPV6_ADDRESS_LIST_PATH);
-		vlan_l3_interface_ipv6_address_list_path = configProperties.getProperty(VLAN_L3_INTERFACE_IPV6_ADDRESS_LIST_PATH);
-	}
-
-	@Override
-	public URL getRequestQueryUrl(String method) throws UnsupportedEncodingException, MalformedURLException {
-		return this.getRequestUrl(method, null);
-	}
-
-	@Override
-	public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException {
-
-		String request_url = target_uri+l3_interface_ipv6_address_list_path;
-
-		if(requestProperties.containsKey(VLAN_INTERFACE) || requestProperties.containsKey(VLAN_VLAN_INTERFACE)){
-			request_url = target_uri+vlan_l3_interface_ipv6_address_list_path;
-			request_url = processVLanRequestPathData(request_url, requestProperties);
-		}
-
-		request_url = processPathData(request_url, requestProperties);
-		request_url = LInterfaceRequest.processPathData(request_url, requestProperties);
-//		request_url = GenericVnfRequest.processPathData(request_url, requestProperties);
-
-		if(resourceVersion != null) {
-			request_url = request_url +"?resource-version="+resourceVersion;
-		}
-		URL http_req_url =	new URL(request_url);
-
-		aaiService.LOGwriteFirstTrace(method, http_req_url.toString());
-
-		return http_req_url;
-	}
-
-	public static String processVLanRequestPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
-		String key = null;
-
-		if(requestProperties.containsKey(VLAN_VLAN_INTERFACE)) {
-			key = VLAN_VLAN_INTERFACE;
-		} else if(requestProperties.containsKey(VLAN_INTERFACE)) {
-			key = VLAN_INTERFACE;
-		} else {
-			aaiService.logKeyError(String.format("%s,%s", VLAN_INTERFACE, VLAN_VLAN_INTERFACE));
-		}
-
-		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
-
-		request_url = request_url.replace("{vlan-interface}", encoded_vnf) ;
-		aaiService.LOGwriteDateTrace("vlan-interface", requestProperties.getProperty(key));
-		return request_url;
-	}
-
-	@Override
-	public String toJSONString() {
-		ObjectMapper mapper = getObjectMapper();
-		L3InterfaceIpv6AddressList vnfc = (L3InterfaceIpv6AddressList)requestDatum;
-		String json_text = null;
-		try {
-			json_text = mapper.writeValueAsString(vnfc);
-		} catch (JsonProcessingException exc) {
-			handleException(this, exc);
-			return null;
-		}
-		return json_text;
-	}
-
-	@Override
-	public String[] getArgsList() {
-		String[] args =
-		{
-			L3_INTERFACE_IPV6_ADDRESS,
-			LIST_L3_INTERFACE_IPV6_ADDRESS,
-			VLAN_INTERFACE,
-			VLAN_VLAN_INTERFACE,
-			LInterfaceRequest.INTERFACE_NAME,
-			LInterfaceRequest.LINTERFACE_INTERFACE_NAME,
-			"generic-vnf.vnf-id"
-
-		};
-
-		return args;
-	}
-
-	@Override
-	public Class<? extends AAIDatum> getModelClass() {
-		return L3InterfaceIpv6AddressList.class;
-	}
-
-	public static String processPathData(String request_url, Properties requestProperties) throws UnsupportedEncodingException {
-		String key = L3_INTERFACE_IPV6_ADDRESS;
-		if(requestProperties.containsKey(LIST_L3_INTERFACE_IPV6_ADDRESS)) {
-			key = LIST_L3_INTERFACE_IPV6_ADDRESS;
-		}
-
-		if(!requestProperties.containsKey(key)) {
-			aaiService.logKeyError(String.format("%s,%s", L3_INTERFACE_IPV6_ADDRESS, LIST_L3_INTERFACE_IPV6_ADDRESS));
-		}
-
-		String encoded_vnf = encodeQuery(requestProperties.getProperty(key));
-
-		request_url = request_url.replace("{l3-interface-ipv6-address}", encoded_vnf) ;
-
-		aaiService.LOGwriteDateTrace("l3-interface-ipv6-address", requestProperties.getProperty(key));
-		return request_url;
-	}
-}
diff --git a/aai-service/provider/src/main/resources/aai-path.properties b/aai-service/provider/src/main/resources/aai-path.properties
index bb42ea0..b0fb35a 100644
--- a/aai-service/provider/src/main/resources/aai-path.properties
+++ b/aai-service/provider/src/main/resources/aai-path.properties
@@ -19,171 +19,171 @@
 # ============LICENSE_END=========================================================
 ###
 
-complex|ctag-pool = /aai/v10/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
-complex = /aai/v10/cloud-infrastructure/complexes/complex/{physical-location-id}
-cloud-region|volume-group = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
-cloud-region|tenant|vserver|volume = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/volumes/volume/{volume-id}
-cloud-region|tenant|vserver|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-cloud-region|tenant|vserver|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-cloud-region|tenant|vserver|l-interface|vlan = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-cloud-region|tenant|vserver|l-interface|sriov-vf = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-cloud-region|tenant|vserver|l-interface|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-cloud-region|tenant|vserver|l-interface|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-cloud-region|tenant|vserver|l-interface = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}
-cloud-region|tenant|vserver = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
-cloud-region|tenant = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
-cloud-region|flavor = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}
-cloud-region|group-assignment = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/group-assignments/group-assignment/{group-id}
-cloud-region|snapshot = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/snapshots/snapshot/{snapshot-id}
-cloud-region|image|metadatum = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}/metadata/metadatum/{metaname}
-cloud-region|image = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}
-cloud-region|dvs-switch = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
-cloud-region|oam-network = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/oam-networks/oam-network/{network-uuid}
-cloud-region|availability-zone = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/availability-zones/availability-zone/{availability-zone-name}
-cloud-region = /aai/v10/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
-network-profile = /aai/v10/cloud-infrastructure/network-profiles/network-profile/{nm-profile-name}
-pserver|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pserver|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pserver|p-interface|l-interface|vlan = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-pserver|p-interface|l-interface|sriov-vf = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-pserver|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pserver|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pserver|p-interface|l-interface = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-pserver|p-interface = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
-pserver|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pserver|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pserver|lag-interface|l-interface|vlan = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-pserver|lag-interface|l-interface|sriov-vf = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-pserver|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pserver|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pserver|lag-interface|l-interface = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-pserver|lag-interface = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}
-pserver = /aai/v10/cloud-infrastructure/pservers/pserver/{hostname}
-virtual-data-center = /aai/v10/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
-connector|metadatum = /aai/v10/business/connectors/connector/{resource-instance-id}/metadata/metadatum/{metaname}
-connector = /aai/v10/business/connectors/connector/{resource-instance-id}
-customer|service-subscription|service-instance|metadatum = /aai/v10/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/metadata/metadatum/{metaname}
-customer|service-subscription|service-instance|allotted-resource|tunnel-xconnect = /aai/v10/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/tunnel-xconnects/tunnel-xconnect/{id}
-customer|service-subscription|service-instance|allotted-resource = /aai/v10/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}
-customer|service-subscription|service-instance = /aai/v10/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
-customer|service-subscription = /aai/v10/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
-customer = /aai/v10/business/customers/customer/{global-customer-id}
-vnf-image = /aai/v10/service-design-and-creation/vnf-images/vnf-image/{att-uuid}
-service = /aai/v10/service-design-and-creation/services/service/{service-id}
-service-capability = /aai/v10/service-design-and-creation/service-capabilities/service-capability/{service-type}/{vnf-type}
-model|model-ver|model-element|model-constraint|constrained-element-set|element-choice-set = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/element-choice-sets/element-choice-set/{element-choice-set-uuid}
-model|model-ver|model-element|model-constraint|constrained-element-set = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}
-model|model-ver|model-element|model-constraint = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}
-model|model-ver|model-element = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}
-model|model-ver|metadatum = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/metadata/metadatum/{metaname}
-model|model-ver = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}
-model = /aai/v10/service-design-and-creation/models/model/{model-invariant-id}
-named-query|named-query-element|related-lookup = /aai/v10/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/related-lookups/related-lookup/{related-lookup-uuid}
-named-query|named-query-element|property-constraint = /aai/v10/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/property-constraints/property-constraint/{property-constraint-uuid}
-named-query|named-query-element = /aai/v10/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}
-named-query = /aai/v10/service-design-and-creation/named-queries/named-query/{named-query-uuid}
-logical-link = /aai/v10/network/logical-links/logical-link/{link-name}
-site-pair-set|routing-instance|site-pair|class-of-service = /aai/v10/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos}
-site-pair-set|routing-instance|site-pair = /aai/v10/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
-site-pair-set|routing-instance = /aai/v10/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
-site-pair-set = /aai/v10/network/site-pair-sets/site-pair-set/{site-pair-set-id}
-vpn-binding|route-target = /aai/v10/network/vpn-bindings/vpn-binding/{vpn-id}/route-targets/route-target/{global-route-target}/{route-target-role}
-vpn-binding = /aai/v10/network/vpn-bindings/vpn-binding/{vpn-id}
-vpls-pe|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpls-pe|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpls-pe|p-interface|l-interface|vlan = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-vpls-pe|p-interface|l-interface|sriov-vf = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-vpls-pe|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpls-pe|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpls-pe|p-interface|l-interface = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-vpls-pe|p-interface = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}
-vpls-pe|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpls-pe|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpls-pe|lag-interface|l-interface|vlan = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-vpls-pe|lag-interface|l-interface|sriov-vf = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-vpls-pe|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpls-pe|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpls-pe|lag-interface|l-interface = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-vpls-pe|lag-interface = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}
-vpls-pe = /aai/v10/network/vpls-pes/vpls-pe/{equipment-name}
-multicast-configuration = /aai/v10/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
-vce|port-group|cvlan-tag-entry = /aai/v10/network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/cvlan-tags/cvlan-tag-entry/{cvlan-tag}
-vce|port-group = /aai/v10/network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}
-vce|license = /aai/v10/network/vces/vce/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
-vce|entitlement = /aai/v10/network/vces/vce/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
-vce = /aai/v10/network/vces/vce/{vnf-id}
-vpe|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpe|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpe|l-interface|vlan = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-vpe|l-interface|sriov-vf = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-vpe|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpe|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpe|l-interface = /aai/v10/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}
-vpe|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpe|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpe|lag-interface|l-interface|vlan = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-vpe|lag-interface|l-interface|sriov-vf = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-vpe|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-vpe|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-vpe|lag-interface|l-interface = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-vpe|lag-interface = /aai/v10/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}
-vpe|license = /aai/v10/network/vpes/vpe/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
-vpe|entitlement = /aai/v10/network/vpes/vpe/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
-vpe = /aai/v10/network/vpes/vpe/{vnf-id}
-vnfc = /aai/v10/network/vnfcs/vnfc/{vnfc-name}
-l3-network|subnet = /aai/v10/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
-l3-network|ctag-assignment = /aai/v10/network/l3-networks/l3-network/{network-id}/ctag-assignments/ctag-assignment/{vlan-id-inner}
-l3-network|segmentation-assignment = /aai/v10/network/l3-networks/l3-network/{network-id}/segmentation-assignments/segmentation-assignment/{segmentation-id}
-l3-network = /aai/v10/network/l3-networks/l3-network/{network-id}
-network-policy = /aai/v10/network/network-policies/network-policy/{network-policy-id}
-generic-vnf|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-generic-vnf|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-generic-vnf|l-interface|vlan = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-generic-vnf|l-interface|sriov-vf = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-generic-vnf|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-generic-vnf|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-generic-vnf|l-interface = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
-generic-vnf|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-generic-vnf|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-generic-vnf|lag-interface|l-interface|vlan = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-generic-vnf|lag-interface|l-interface|sriov-vf = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-generic-vnf|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-generic-vnf|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-generic-vnf|lag-interface|l-interface = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-generic-vnf|lag-interface = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}
-generic-vnf|vf-module = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
-generic-vnf|license = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
-generic-vnf|entitlement = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
-generic-vnf = /aai/v10/network/generic-vnfs/generic-vnf/{vnf-id}
-lag-link = /aai/v10/network/lag-links/lag-link/{link-name}
-newvce|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-newvce|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-newvce|l-interface|vlan = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-newvce|l-interface|sriov-vf = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-newvce|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-newvce|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-newvce|l-interface = /aai/v10/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}
-newvce = /aai/v10/network/newvces/newvce/{vnf-id2}
-pnf|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pnf|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pnf|p-interface|l-interface|vlan = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-pnf|p-interface|l-interface|sriov-vf = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-pnf|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pnf|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pnf|p-interface|l-interface = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-pnf|p-interface = /aai/v10/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}
-pnf|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pnf|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pnf|lag-interface|l-interface|vlan = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
-pnf|lag-interface|l-interface|sriov-vf = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
-pnf|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
-pnf|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
-pnf|lag-interface|l-interface = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
-pnf|lag-interface = /aai/v10/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}
-pnf = /aai/v10/network/pnfs/pnf/{pnf-name}
-physical-link = /aai/v10/network/physical-links/physical-link/{link-name}
-ipsec-configuration|vig-server = /aai/v10/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
-ipsec-configuration = /aai/v10/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
-route-table-reference = /aai/v10/network/route-table-references/route-table-reference/{route-table-reference-id}
-instance-group = /aai/v10/network/instance-groups/instance-group/{id}
-zone = /aai/v10/network/zones/zone/{zone-id}
+complex|ctag-pool = /aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}
+complex = /aai/v11/cloud-infrastructure/complexes/complex/{physical-location-id}
+cloud-region|volume-group = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}
+cloud-region|tenant|vserver|volume = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/volumes/volume/{volume-id}
+cloud-region|tenant|vserver|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+cloud-region|tenant|vserver|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+cloud-region|tenant|vserver|l-interface|vlan = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+cloud-region|tenant|vserver|l-interface|sriov-vf = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+cloud-region|tenant|vserver|l-interface|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+cloud-region|tenant|vserver|l-interface|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+cloud-region|tenant|vserver|l-interface = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}
+cloud-region|tenant|vserver = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}
+cloud-region|tenant = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}
+cloud-region|flavor = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}
+cloud-region|group-assignment = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/group-assignments/group-assignment/{group-id}
+cloud-region|snapshot = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/snapshots/snapshot/{snapshot-id}
+cloud-region|image|metadatum = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}/metadata/metadatum/{metaname}
+cloud-region|image = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}
+cloud-region|dvs-switch = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}
+cloud-region|oam-network = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/oam-networks/oam-network/{network-uuid}
+cloud-region|availability-zone = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/availability-zones/availability-zone/{availability-zone-name}
+cloud-region = /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}
+network-profile = /aai/v11/cloud-infrastructure/network-profiles/network-profile/{nm-profile-name}
+pserver|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pserver|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pserver|p-interface|l-interface|vlan = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+pserver|p-interface|l-interface|sriov-vf = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+pserver|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pserver|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pserver|p-interface|l-interface = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+pserver|p-interface = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}
+pserver|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pserver|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pserver|lag-interface|l-interface|vlan = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+pserver|lag-interface|l-interface|sriov-vf = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+pserver|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pserver|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pserver|lag-interface|l-interface = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+pserver|lag-interface = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}
+pserver = /aai/v11/cloud-infrastructure/pservers/pserver/{hostname}
+virtual-data-center = /aai/v11/cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}
+connector|metadatum = /aai/v11/business/connectors/connector/{resource-instance-id}/metadata/metadatum/{metaname}
+connector = /aai/v11/business/connectors/connector/{resource-instance-id}
+customer|service-subscription|service-instance|metadatum = /aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/metadata/metadatum/{metaname}
+customer|service-subscription|service-instance|allotted-resource|tunnel-xconnect = /aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/tunnel-xconnects/tunnel-xconnect/{id}
+customer|service-subscription|service-instance|allotted-resource = /aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}
+customer|service-subscription|service-instance = /aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}
+customer|service-subscription = /aai/v11/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}
+customer = /aai/v11/business/customers/customer/{global-customer-id}
+vnf-image = /aai/v11/service-design-and-creation/vnf-images/vnf-image/{vnf-image-uuid}
+service = /aai/v11/service-design-and-creation/services/service/{service-id}
+service-capability = /aai/v11/service-design-and-creation/service-capabilities/service-capability/{service-type}/{vnf-type}
+model|model-ver|model-element|model-constraint|constrained-element-set|element-choice-set = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/element-choice-sets/element-choice-set/{element-choice-set-uuid}
+model|model-ver|model-element|model-constraint|constrained-element-set = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}
+model|model-ver|model-element|model-constraint = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}
+model|model-ver|model-element = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}
+model|model-ver|metadatum = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/metadata/metadatum/{metaname}
+model|model-ver = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}
+model = /aai/v11/service-design-and-creation/models/model/{model-invariant-id}
+named-query|named-query-element|related-lookup = /aai/v11/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/related-lookups/related-lookup/{related-lookup-uuid}
+named-query|named-query-element|property-constraint = /aai/v11/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/property-constraints/property-constraint/{property-constraint-uuid}
+named-query|named-query-element = /aai/v11/service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}
+named-query = /aai/v11/service-design-and-creation/named-queries/named-query/{named-query-uuid}
+logical-link = /aai/v11/network/logical-links/logical-link/{link-name}
+site-pair-set|routing-instance|site-pair|class-of-service = /aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos}
+site-pair-set|routing-instance|site-pair = /aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}
+site-pair-set|routing-instance = /aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}
+site-pair-set = /aai/v11/network/site-pair-sets/site-pair-set/{site-pair-set-id}
+vpn-binding|route-target = /aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}/route-targets/route-target/{global-route-target}/{route-target-role}
+vpn-binding = /aai/v11/network/vpn-bindings/vpn-binding/{vpn-id}
+vpls-pe|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpls-pe|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpls-pe|p-interface|l-interface|vlan = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+vpls-pe|p-interface|l-interface|sriov-vf = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+vpls-pe|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpls-pe|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpls-pe|p-interface|l-interface = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+vpls-pe|p-interface = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}
+vpls-pe|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpls-pe|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpls-pe|lag-interface|l-interface|vlan = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+vpls-pe|lag-interface|l-interface|sriov-vf = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+vpls-pe|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpls-pe|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpls-pe|lag-interface|l-interface = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+vpls-pe|lag-interface = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}
+vpls-pe = /aai/v11/network/vpls-pes/vpls-pe/{equipment-name}
+multicast-configuration = /aai/v11/network/multicast-configurations/multicast-configuration/{multicast-configuration-id}
+vce|port-group|cvlan-tag-entry = /aai/v11/network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/cvlan-tags/cvlan-tag-entry/{cvlan-tag}
+vce|port-group = /aai/v11/network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}
+vce|license = /aai/v11/network/vces/vce/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
+vce|entitlement = /aai/v11/network/vces/vce/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
+vce = /aai/v11/network/vces/vce/{vnf-id}
+vpe|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpe|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpe|l-interface|vlan = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+vpe|l-interface|sriov-vf = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+vpe|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpe|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpe|l-interface = /aai/v11/network/vpes/vpe/{vnf-id}/l-interfaces/l-interface/{interface-name}
+vpe|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpe|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpe|lag-interface|l-interface|vlan = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+vpe|lag-interface|l-interface|sriov-vf = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+vpe|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+vpe|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+vpe|lag-interface|l-interface = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+vpe|lag-interface = /aai/v11/network/vpes/vpe/{vnf-id}/lag-interfaces/lag-interface/{interface-name}
+vpe|license = /aai/v11/network/vpes/vpe/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
+vpe|entitlement = /aai/v11/network/vpes/vpe/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
+vpe = /aai/v11/network/vpes/vpe/{vnf-id}
+vnfc = /aai/v11/network/vnfcs/vnfc/{vnfc-name}
+l3-network|subnet = /aai/v11/network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}
+l3-network|ctag-assignment = /aai/v11/network/l3-networks/l3-network/{network-id}/ctag-assignments/ctag-assignment/{vlan-id-inner}
+l3-network|segmentation-assignment = /aai/v11/network/l3-networks/l3-network/{network-id}/segmentation-assignments/segmentation-assignment/{segmentation-id}
+l3-network = /aai/v11/network/l3-networks/l3-network/{network-id}
+network-policy = /aai/v11/network/network-policies/network-policy/{network-policy-id}
+generic-vnf|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+generic-vnf|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+generic-vnf|l-interface|vlan = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+generic-vnf|l-interface|sriov-vf = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+generic-vnf|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+generic-vnf|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+generic-vnf|l-interface = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}
+generic-vnf|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+generic-vnf|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+generic-vnf|lag-interface|l-interface|vlan = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+generic-vnf|lag-interface|l-interface|sriov-vf = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+generic-vnf|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+generic-vnf|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+generic-vnf|lag-interface|l-interface = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+generic-vnf|lag-interface = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}
+generic-vnf|vf-module = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}
+generic-vnf|license = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}
+generic-vnf|entitlement = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}
+generic-vnf = /aai/v11/network/generic-vnfs/generic-vnf/{vnf-id}
+lag-link = /aai/v11/network/lag-links/lag-link/{link-name}
+newvce|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+newvce|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+newvce|l-interface|vlan = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+newvce|l-interface|sriov-vf = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+newvce|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+newvce|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+newvce|l-interface = /aai/v11/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}
+newvce = /aai/v11/network/newvces/newvce/{vnf-id2}
+pnf|p-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pnf|p-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pnf|p-interface|l-interface|vlan = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+pnf|p-interface|l-interface|sriov-vf = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+pnf|p-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pnf|p-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pnf|p-interface|l-interface = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+pnf|p-interface = /aai/v11/network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}
+pnf|lag-interface|l-interface|vlan|l3-interface-ipv4-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pnf|lag-interface|l-interface|vlan|l3-interface-ipv6-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pnf|lag-interface|l-interface|vlan = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}
+pnf|lag-interface|l-interface|sriov-vf = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}
+pnf|lag-interface|l-interface|l3-interface-ipv4-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}
+pnf|lag-interface|l-interface|l3-interface-ipv6-address-list = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}
+pnf|lag-interface|l-interface = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}
+pnf|lag-interface = /aai/v11/network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}
+pnf = /aai/v11/network/pnfs/pnf/{pnf-name}
+physical-link = /aai/v11/network/physical-links/physical-link/{link-name}
+ipsec-configuration|vig-server = /aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}
+ipsec-configuration = /aai/v11/network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}
+route-table-reference = /aai/v11/network/route-table-references/route-table-reference/{route-table-reference-id}
+instance-group = /aai/v11/network/instance-groups/instance-group/{id}
+zone = /aai/v11/network/zones/zone/{zone-id}
diff --git a/aai-service/provider/src/main/resources/aai-schema-bindings.xjb b/aai-service/provider/src/main/resources/aai-schema-bindings.xjb
index 47d1bc2..6e4105d 100755
--- a/aai-service/provider/src/main/resources/aai-schema-bindings.xjb
+++ b/aai-service/provider/src/main/resources/aai-schema-bindings.xjb
@@ -3,7 +3,7 @@
   xmlns:xs="http://www.w3.org/2001/XMLSchema"

   xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"

   jxb:extensionBindingPrefixes="xjc">

-    <jxb:bindings schemaLocation="aai_schema_v10.xsd" node="/xs:schema">

+    <jxb:bindings schemaLocation="aai_schema_v11.xsd" node="/xs:schema">

     <jxb:globalBindings>

         <xjc:superInterface name="org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum"/>

     </jxb:globalBindings>

diff --git a/aai-service/provider/src/main/resources/aai_schema_v10.xsd b/aai-service/provider/src/main/resources/aai_schema_v11.xsd
similarity index 91%
rename from aai-service/provider/src/main/resources/aai_schema_v10.xsd
rename to aai-service/provider/src/main/resources/aai_schema_v11.xsd
index fed5baf..53b3acf 100755
--- a/aai-service/provider/src/main/resources/aai_schema_v10.xsd
+++ b/aai-service/provider/src/main/resources/aai_schema_v11.xsd
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://org.openecomp.aai.inventory/v10" xmlns:tns="http://org.openecomp.aai.inventory/v10" xmlns:xs="http://www.w3.org/2001/XMLSchema"
+<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://org.onap.aai.inventory/v11" xmlns:tns="http://org.onap.aai.inventory/v11" xmlns:xs="http://www.w3.org/2001/XMLSchema"
 xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     jaxb:version="2.1" 
     xmlns:annox="http://annox.dev.java.net" 
@@ -305,7 +305,7 @@
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -814,7 +814,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Definition of vlan",indexedProps="vlan-interface,vlan-id-inner,vpn-id",uniqueProps="vpn-id",dependentOn="l-interface",container="vlans")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Definition of vlan",indexedProps="vlan-interface,vlan-id-inner,vpn-key",dependentOn="l-interface",container="vlans")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -874,7 +874,7 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="vpn-id" type="xs:string" minOccurs="0">
+        <xs:element name="vpn-key" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
               <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This indicates the customers VPN ID associated with this vlan")</annox:annotate>
@@ -888,6 +888,27 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="prov-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV].")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-ip-unnumbered" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="Flag indicating the interface uses the IP Unnumbered configuration.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:l3-interface-ipv4-address-list" minOccurs="0" maxOccurs="unbounded"/>
         <xs:element ref="tns:l3-interface-ipv6-address-list" minOccurs="0" maxOccurs="unbounded"/>
@@ -1097,7 +1118,7 @@
         <xs:element name="is-port-mirrored" type="xs:boolean">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this port is mirrored.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="boolean indicatating whether or not port is a mirrored.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -1108,9 +1129,30 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element ref="tns:l-interfaces" minOccurs="0"/>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="prov-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV].")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="is-ip-unnumbered" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="Flag indicating the interface uses the IP Unnumbered configuration.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:vlans" minOccurs="0"/>
         <xs:element ref="tns:sriov-vfs" minOccurs="0"/>
+        <xs:element ref="tns:l-interfaces" minOccurs="0"/>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:l3-interface-ipv4-address-list" minOccurs="0" maxOccurs="unbounded"/>
         <xs:element ref="tns:l3-interface-ipv6-address-list" minOccurs="0" maxOccurs="unbounded"/>
@@ -1215,7 +1257,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack tenant",nameProps="tenant-name",indexedProps="tenant-name,tenant-id",searchable="tenant-id,tenant-name",dependentOn="cloud-region",container="tenants")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack tenant",nameProps="tenant-name",indexedProps="tenant-name,tenant-id,tenant-context",searchable="tenant-id,tenant-name",dependentOn="cloud-region",container="tenants")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -1233,6 +1275,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="tenant-context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the tenant context.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -1362,7 +1411,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack group-assignment used to store exclusivity groups (EG).",nameProps="group-name",indexedProps="group-id,group-type,group-name",dependentOn="cloud-region",container="group-assignments")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack group-assignment used to store exclusivity groups (EG).",nameProps="group-name",indexedProps="group-id,group-type,group-name",searchable="group-id,group-name",dependentOn="cloud-region",container="group-assignments")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -1667,7 +1716,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&amp;Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&amp;T's AIC.  It's important to note that      the cloud-region data is not updated once created, so there is a potential for the data to become stale.",indexedProps="cloud-owner,cloud-region-id,cloud-type,owner-defined-type",nameProps="owner-defined-type",container="cloud-regions",namespace="cloud-infrastructure")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&amp;Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&amp;T's AIC.",indexedProps="cloud-owner,cloud-region-id,cloud-type,owner-defined-type",nameProps="owner-defined-type",container="cloud-regions",namespace="cloud-infrastructure")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -1727,6 +1776,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="sriov-automation" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="Whether the cloud region supports (true) or does not support (false) SR-IOV automation.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -1804,6 +1860,44 @@
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="sriov-pf">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="SR-IOV Physical Function",indexedProps="pf-pci-id",dependentOn="p-interface",container="sriov-pfs")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="pf-pci-id" type="xs:string">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(isKey=true,description="Identifier for the sriov-pf")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="sriov-pfs">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Collection of SR-IOV Physical Functions.")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:sriov-pf" minOccurs="0" maxOccurs="unbounded"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="p-interface">
     <xs:complexType>
       <xs:annotation>
@@ -1875,7 +1969,22 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="inv-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="inventory status")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
+        <xs:element ref="tns:sriov-pfs" minOccurs="0"/>
         <xs:element ref="tns:l-interfaces" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
@@ -1956,6 +2065,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this object is in maintenance mode (maintenance mode = true)")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:l-interfaces" minOccurs="0"/>
       </xs:sequence>
@@ -2156,6 +2272,20 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="management-option" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicates who owns and or manages the device.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="host-profile" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="The host profile that defines the configuration of the pserver.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:p-interfaces" minOccurs="0"/>
         <xs:element ref="tns:lag-interfaces" minOccurs="0"/>
@@ -2235,6 +2365,56 @@
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="license-key-resource">
+    <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="OBSOLETE OBJECT:  do not use",nameProps="name",indexedProps="assignment-group-uuid,vnf-image-uuid,name",uniqueProps="vnf-image-uuid",container="license-key-resources",namespace="license-management")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element name="vnf-image-uuid" type="xs:string">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(isKey=true)</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="assignment-type" type="xs:string" minOccurs="0"/>
+        <xs:element name="assignment-status" type="xs:string" minOccurs="0"/>
+        <xs:element name="assignment-group-uuid" type="xs:string"/>
+        <xs:element name="assignment-date" type="xs:string" minOccurs="0"/>
+        <xs:element name="name" type="xs:string" minOccurs="0"/>
+        <xs:element name="model-uuid" type="xs:string" minOccurs="0"/>
+        <xs:element name="model-version" type="xs:string" minOccurs="0"/>
+        <xs:element name="license-key" type="xs:string" minOccurs="0"/>
+        <xs:element name="license-key-file-url" type="xs:string" minOccurs="0"/>
+        <xs:element name="supplier-release-list" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="license-key-resources">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:license-key-resource" minOccurs="0" maxOccurs="unbounded"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="license-management">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="tns:license-key-resources" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="connector">
     <xs:complexType>
       <xs:annotation>
@@ -2260,14 +2440,21 @@
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -2400,35 +2587,21 @@
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="model-customization-id" type="xs:string" minOccurs="0">
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="captures the id of all the configuration used to customize the resource for the service.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="orchestration-status" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Orchestration status of this resource, mastered by MSO")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="operational-status" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -2439,17 +2612,31 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="orchestration-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Orchestration status")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="operational-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="type" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Generic description of the type of the resource")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Generic description of the type of allotted resource.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="role" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Role that this asset will be playing in its context.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="role in the network that this resource will be providing.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -2474,7 +2661,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Instance of a service",indexedProps="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status",nameProps="service-instance-name",searchable="service-instance-id,service-instance-name",uniqueProps="service-instance-id",dependentOn="service-subscription",container="service-instances")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Instance of a service",indexedProps="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",nameProps="service-instance-name",searchable="service-instance-id,service-instance-name",uniqueProps="service-instance-id",dependentOn="service-subscription",container="service-instances")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -2492,17 +2679,52 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="service-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="String capturing type of service.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="service-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="String capturing the service role.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="environment-context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the environment context assigned to the service-instance.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="workload-context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the workload context assigned to the service-instance.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -2724,11 +2946,11 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge.",indexedProps="application,att-uuid,application-vendor,application-version",uniqueProps="att-uuid",container="vnf-images",namespace="service-design-and-creation")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge.",indexedProps="application,vnf-image-uuid,application-vendor,application-version",uniqueProps="vnf-image-uuid",container="vnf-images",namespace="service-design-and-creation")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
-        <xs:element name="att-uuid" type="xs:string">
+        <xs:element name="vnf-image-uuid" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
               <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(isKey=true,description="Unique ID of this asset")</annox:annotate>
@@ -3013,18 +3235,7 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="linkage-points" minOccurs="0">
-          <xs:complexType>
-            <xs:annotation>
-              <xs:appinfo>
-                <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Defines how other models combine to make up a higher-level model.",uniqueProps="model-element-uuid",indexedProps="model-element-uuid",allowDirectRead="true",allowDirectWrite="false",container="model-elements")</annox:annotate>
-              </xs:appinfo>
-            </xs:annotation>
-            <xs:sequence>
-              <xs:element name="linkage-point" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
-            </xs:sequence>
-          </xs:complexType>
-        </xs:element>
+        <xs:element name="linkage-points" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -3327,6 +3538,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="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.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="link-type" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
@@ -3372,14 +3590,21 @@
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -3400,7 +3625,7 @@
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indication of operational status of the logical link.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -3677,7 +3902,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="stores the global route targets associated with a VPN",indexedProps="global-route-target,route-target-role",searchable="global-route-target",container="route-targets",namespace="network")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Route target information",container="route-targets",dependentOn="vpn-binding",canBeLinked="true")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -3691,7 +3916,7 @@
         <xs:element name="route-target-role" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(isKey=true,description="Role assigned to this route target, valid values EXPORT/IMPORT/BOTH")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(isKey=true,description="Role assigned to this route target")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -3702,18 +3927,17 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element ref="tns:relationship-list" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Relationship to other objects")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
+        <xs:element ref="tns:relationship-list" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
   <xs:element name="route-targets">
     <xs:complexType>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Collection of route target information")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
       <xs:sequence>
         <xs:element ref="tns:route-target" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
@@ -3723,7 +3947,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="VPN binding",nameProps="vpn-name,vpn-type",indexedProps="vpn-name,vpn-id,global-route-target,vpn-type",searchable="vpn-id,vpn-name",uniqueProps="vpn-id",container="vpn-bindings",namespace="network")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="VPN binding",nameProps="vpn-name,vpn-type",indexedProps="vpn-name,vpn-id,vpn-type",searchable="vpn-id,vpn-name",uniqueProps="vpn-id",container="vpn-bindings",namespace="network")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -3741,13 +3965,6 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="global-route-target" type="xs:string">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Number used to identify a VPN, globally unique in the network.  NOTE - WILL BE RETIRED IN 1802, see child object")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
         <xs:element name="vpn-platform" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -3762,6 +3979,20 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="vpn-region" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="region of customer vpn")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="customer-vpn-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="id for this customer vpn")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="route-distinguisher" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -3769,13 +4000,6 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="route-target-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Role assigned to this route target.  NOTE - WILL BE RETIRED IN 1802, see child object")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -4201,7 +4425,14 @@
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="license-key" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="OBSOLETE -  do not use")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -4268,6 +4499,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="entitlement-resource-uuid" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="OBSOLETE -  see child relationships")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:port-groups" minOccurs="0"/>
         <xs:element ref="tns:licenses" minOccurs="0"/>
         <xs:element ref="tns:entitlements" minOccurs="0"/>
@@ -4347,7 +4585,14 @@
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="license-key" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="OBSOLETE -  do not use.  See child relationships.")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -4466,7 +4711,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(indexedProps="vnfc-name,prov-status,vnfc-type,vnfc-function-code,ipaddress-v4-oam-vip,in-maint,is-closed-loop-disabled,group-notation",searchable="vnfc-name",container="vnfcs",namespace="network")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(indexedProps="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",searchable="vnfc-name",container="vnfcs",namespace="network")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -4477,17 +4722,17 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="vnfc-function-code" type="xs:string">
+        <xs:element name="nfc-naming-code" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="function code")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Short code that is used in naming instances of the item being modeled")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="vnfc-type" type="xs:string">
+        <xs:element name="nfc-function" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="type")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -4533,6 +4778,20 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="model-version-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -4641,6 +4900,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="subnet-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="role of the subnet, referenced when assigning IPs")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -4839,14 +5105,21 @@
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -4899,13 +5172,6 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
-        <xs:element name="operational-status" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
         <xs:element name="selflink" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -4913,6 +5179,13 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="operational-status" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:subnets" minOccurs="0"/>
         <xs:element ref="tns:ctag-assignments" minOccurs="0"/>
         <xs:element ref="tns:segmentation-assignments" minOccurs="0"/>
@@ -5033,14 +5306,21 @@
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5106,7 +5386,7 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="General purpose VNF",nameProps="vnf-name",indexedProps="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-role,nf-function,nf-naming-code",searchable="vnf-id,vnf-name,vnf-name2",uniqueProps="vnf-id",container="generic-vnfs",namespace="network",extendsFrom="vnf")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="General purpose VNF",nameProps="vnf-name",indexedProps="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",searchable="vnf-id,vnf-name,vnf-name2",uniqueProps="vnf-id",container="generic-vnfs",namespace="network",extendsFrom="vnf",containsSuggestibleProps="true",suggestionAliases="VNFs")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -5155,14 +5435,21 @@
         <xs:element name="prov-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Trigger for operational monitoring of this resource by Service Assurance systems.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Trigger for operational monitoring of this resource by Service Assurance systems.",suggestibleOnSearch="true")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="license-key" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="OBSOLETE -  do not use")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5176,7 +5463,7 @@
         <xs:element name="orchestration-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Orchestration status of this VNF, used by MSO.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Orchestration status of this VNF, used by MSO.",suggestibleOnSearch="true")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5197,7 +5484,7 @@
         <xs:element name="management-option" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="identifier of managed by ATT or customer")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="identifier of managed by ONAP or customer")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5306,17 +5593,52 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="entitlement-assignment-group-uuid" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="entitlement-resource-uuid" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="UUID of the specific entitlement resource.  OBSOLETE -  See child relationships.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="license-assignment-group-uuid" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="UUID of the license assignment group.  OBSOLETE -  See child relationships.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="license-key-uuid" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="UUID of the actual license resource.  OBSOLETE -  See child relationships.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model id for this resource or service model.",visibility="deployment",requires="model-version-id",dbAlias="model-invariant-id-local")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="model-version-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version uuid for this resource or service model.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="deployment",requires="model-invariant-id",dbAlias="model-version-id-local")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="persona-model-version" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="the ASDC model version for this resource or service model.",visibility="internal",dataCopy="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}#model-version")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5358,28 +5680,28 @@
         <xs:element name="nf-type" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Generic description of the type of the resource")</annox:annotate>
-            </xs:appinfo>
-          </xs:annotation>
-        </xs:element>
-        <xs:element name="nf-role" type="xs:string" minOccurs="0">
-          <xs:annotation>
-            <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Role that this asset will be playing in its context.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Generic description of the type of NF",suggestibleOnSearch="true")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="nf-function" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="English description of function that the specific resource deployment is providing.  Assigned as part of the customization of a resource in a service")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="English description of Network function that the specific VNF deployment is providing")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="nf-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="role in the network that this model will be providing",suggestibleOnSearch="true")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
         <xs:element name="nf-naming-code" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Short code that is used in naming instances of the item being modelled")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="string assigned to this model used for naming purposes")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5390,6 +5712,34 @@
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="ipv4-oam-gateway-address" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Gateway address")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="ipv4-oam-gateway-address-prefix-length" type="xs:int" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Prefix length for oam-address")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="vlan-id-outer" type="xs:unsignedInt" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Temporary location for S-TAG to get to VCE")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="nm-profile-name" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Network Management profile of this VNF")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element ref="tns:relationship-list" minOccurs="0"/>
         <xs:element ref="tns:l-interfaces" minOccurs="0"/>
         <xs:element ref="tns:lag-interfaces" minOccurs="0"/>
@@ -5495,7 +5845,7 @@
         <xs:element name="operational-status" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Status that indicates whether the asset is in or out of the service path.  Valid values are null, in-service-path, out-of-service-path.")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="Indicator for whether the resource is considered operational")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5632,7 +5982,7 @@
         <xs:element name="management-option" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="identifier of managed by ATT or customer")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="identifier of managed by ONAP or customer")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -5911,7 +6261,7 @@
         <xs:element name="requested-dmz-type" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
-              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="ATT can offer a shared DMZ or a DMZ specific to a customer")</annox:annotate>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="ONAP can offer a shared DMZ or a DMZ specific to a customer")</annox:annotate>
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
@@ -6102,10 +6452,31 @@
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="General mechanism for grouping instances",nameProps="description",uniqueProps="id",indexedProps="id,description,type,sub-type",container="instance-groups",namespace="network")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="General mechanism for grouping instances",nameProps="description",uniqueProps="id",searchable="id,description",indexedProps="id,description,type,sub-type",container="instance-groups",namespace="network")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
+        <xs:element name="instance-group-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="role of the instance group.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="ASDC model id for this resource or service model.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="model-version-id" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="ASDC model version uid for this resource model.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="id" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
@@ -6282,11 +6653,11 @@
         <xs:element name="edgeLabel" type="xs:string" minOccurs="0"/>
         <xs:element name="direction" type="xs:string" minOccurs="0"/>
         <xs:element name="multiplicityRule" type="xs:string" minOccurs="0"/>
-        <xs:element name="isParent" type="xs:boolean" minOccurs="0"/>
-        <xs:element name="usesResource" type="xs:boolean" minOccurs="0"/>
-        <xs:element name="hasDelTarget" type="xs:boolean" minOccurs="0"/>
+        <xs:element name="is-parent" type="xs:string" minOccurs="0"/>
+        <xs:element name="uses-resource" type="xs:string" minOccurs="0"/>
+        <xs:element name="has-del-target" type="xs:string" minOccurs="0"/>
         <xs:element name="SVC-INFRA" type="xs:string" minOccurs="0"/>
-        <xs:element name="SVC-INFRA-REV" type="xs:string" minOccurs="0"/>
+        <xs:element name="prevent-delete" type="xs:string" minOccurs="0"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
@@ -6304,6 +6675,7 @@
         <xs:element ref="tns:search" minOccurs="0"/>
         <xs:element ref="tns:actions" minOccurs="0"/>
         <xs:element ref="tns:cloud-infrastructure" minOccurs="0"/>
+        <xs:element ref="tns:license-management" minOccurs="0"/>
         <xs:element ref="tns:business" minOccurs="0"/>
         <xs:element ref="tns:service-design-and-creation" minOccurs="0"/>
         <xs:element ref="tns:network" minOccurs="0"/>
@@ -6483,9 +6855,24 @@
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="extra-property">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="property-name" type="xs:string" minOccurs="0"/>
+        <xs:element name="property-value" type="xs:string" minOccurs="0"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="extra-properties">
     <xs:complexType>
-      <xs:sequence/>
+      <xs:annotation>
+        <xs:appinfo>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Extra properties for inventory item for response list")</annox:annotate>
+        </xs:appinfo>
+      </xs:annotation>
+      <xs:sequence>
+        <xs:element ref="tns:extra-property" minOccurs="0" maxOccurs="unbounded"/>
+      </xs:sequence>
     </xs:complexType>
   </xs:element>
   <xs:element name="inventory-response-item">
@@ -6535,13 +6922,6 @@
       </xs:sequence>
     </xs:complexType>
   </xs:element>
-  <xs:element name="extra-property">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="property-name" type="xs:string" minOccurs="0"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
   <xs:element name="vnf">
     <xs:complexType>
       <xs:annotation>
diff --git a/aai-service/provider/src/test/java/org/onap/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java b/aai-service/provider/src/test/java/org/onap/ccsdk/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java
similarity index 98%
rename from aai-service/provider/src/test/java/org/onap/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java
rename to aai-service/provider/src/test/java/org/onap/ccsdk/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java
index 8bd2b66..9d357d3 100644
--- a/aai-service/provider/src/test/java/org/onap/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java
+++ b/aai-service/provider/src/test/java/org/onap/ccsdk/sli/adaptors/aai/r1607/R1607AutoGeneratedTest.java
@@ -56,8 +56,8 @@
 import org.onap.ccsdk.sli.adaptors.aai.AAIRequest;
 import org.onap.ccsdk.sli.adaptors.aai.AAIService;
 import org.onap.ccsdk.sli.adaptors.aai.data.AAIDatum;
-import org.openecomp.aai.inventory.v10.GenericVnf;
-import org.openecomp.aai.inventory.v10.InventoryResponseItems;
+import org.openecomp.aai.inventory.v11.GenericVnf;
+import org.openecomp.aai.inventory.v11.InventoryResponseItems;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;