[sdc] update code  of sdc

Change-Id: If9f37c80b659cb67b34d18e6c019defecca58b9a
Signed-off-by: Michael Lando <ml636r@att.com>
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java
index 99e0a0a..656f7af 100644
--- a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java
@@ -173,7 +173,7 @@
     componentData
         .setDisplayName(compositionDataExtractor.getComponentDisplayName(componentData.getName()));
     String displayName = componentData.getDisplayName();
-    componentData.setName(displayName);
+    componentData.setName(componentData.getName().replace("com.att.d2", "org.openecomp"));
     componentData.setVfcCode(displayName);
     component.setCompositionData(JsonUtil.object2Json(componentData));
 
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java
index 4d2b26d..78f2997 100644
--- a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java
@@ -60,7 +60,7 @@
     VspQuestionnaireEntity vspQuestionnaireEntity =
         vspInfoDao.getQuestionnaire(vspId, version);
 
-    if(Objects.isNull(vspQuestionnaireEntity.getQuestionnaireData())) {
+    if(Objects.isNull(vspQuestionnaireEntity.getQuestionnaireData())|| "".equals(vspQuestionnaireEntity.getQuestionnaireData())) {
       questionnaireData = healQuestionnaire(vspId, version);
     }
 
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java
index 82ba139..4fa0ab3 100644
--- a/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java
@@ -1,5 +1,6 @@
 package org.openecomp.sdc.migration;
 
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.io.IOUtils;
 import org.openecomp.core.model.dao.EnrichedServiceModelDao;
 import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
@@ -19,14 +20,19 @@
 import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
 import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductManager;
 import org.openecomp.sdc.vendorsoftwareproduct.VspManagerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDao;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDaoFactory;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
 import org.openecomp.sdc.versioning.dao.types.Version;
 import org.openecomp.core.zusammen.impl.CassandraConnectionInitializer;
 
@@ -43,6 +49,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
 import java.util.zip.ZipOutputStream;
@@ -68,12 +75,14 @@
       VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
   private static PackageInfoDao packageInfoDao = PackageInfoDaoFactory.getInstance()
       .createInterface();
+  private static final ComponentDao componentDao =
+      ComponentDaoFactory.getInstance().createInterface();
   private static Logger logger = LoggerFactory.getLogger(ToscaNamespaceMigration.class);
   private static int status = 0;
 
 
   public static void main(String[] args) {
-    CassandraConnectionInitializer.setCassandraConnectionPropertiesToSystem();
+    //CassandraConnectionInitializer.setCassandraConnectionPropertiesToSystem();
 
     Collection<VspDetails> vspList = vspInfoDao.list(new VspDetails());
 
@@ -90,6 +99,9 @@
   }
 
   private static void performMigration(VspDetails vspDetails) {
+
+    changeComponentNamePrefix(vspDetails);
+
     try {
       changeNamespaceInServiceTemplates(vspDetails);
     } catch (Exception e) {
@@ -101,6 +113,37 @@
     if (vspDetails.getVersion().isFinal()) {
       changeNamespaceInPackage(vspDetails);
     }
+
+  }
+
+  private static void changeComponentNamePrefix(VspDetails vspDetails){
+    Collection<ComponentEntity> componentsList =
+        componentDao.list(new ComponentEntity(vspDetails.getId(), vspDetails.getVersion(), null));
+
+    if(CollectionUtils.isEmpty(componentsList)){
+      printMessage("No component namespace migration was performed on vsp with id" + vspDetails
+          .getId() + " and version " + vspDetails.getVersion().toString() + " since it has no " +
+          "components");
+      return;
+    }
+
+    for(ComponentEntity component : componentsList){
+      String compositionData = component.getCompositionData();
+
+      if(Objects.isNull(compositionData)){
+        continue;
+      }
+
+      ComponentData componentData =
+          JsonUtil.json2Object(compositionData, ComponentData.class);
+      componentData.setName(componentData.getName().replace("com.att.d2", "org.openecomp"));
+      component.setCompositionData(JsonUtil.object2Json(componentData));
+
+      componentDao.update(component);
+    }
+
+    printMessage("Component namespace migration was performed on vsp with id" + vspDetails
+        .getId() + " and version " + vspDetails.getVersion().toString());
   }
 
   private static void changeNamespaceInServiceTemplates(VspDetails vspDetails) throws IOException {
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip
index 7f14138..659a238 100644
--- a/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip
Binary files differ
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java
index 607dc36..9566e22 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java
@@ -11,6 +11,7 @@
 import org.openecomp.sdc.tosca.services.ToscaUtil;
 import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionEntity;
 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionMode;
 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
@@ -72,7 +73,7 @@
       if (preConditionResult) {
         boolean consolidationRuleCheckResult =
             checkConsolidationRules(serviceTemplate, typeComputeConsolidationData,
-                consolidationData);
+                consolidationData, translationContext);
 
         unifiedCompositionService.createUnifiedComposition(
             serviceTemplate, null, unifiedCompositionDataList,
@@ -123,9 +124,11 @@
 
   private boolean checkConsolidationRules(ServiceTemplate serviceTemplate,
                                           TypeComputeConsolidationData typeComputeConsolidationData,
-                                          ConsolidationData consolidationData) {
+                                          ConsolidationData consolidationData,
+                                          TranslationContext context) {
     return checkComputeConsolidation(serviceTemplate, typeComputeConsolidationData)
-        && checkPortConsolidation(serviceTemplate, typeComputeConsolidationData, consolidationData)
+        && checkPortConsolidation(serviceTemplate, typeComputeConsolidationData,
+        consolidationData, context)
         && !checkGetAttrBetweenEntityConsolidationOfTheSameType(serviceTemplate,
         typeComputeConsolidationData, consolidationData);
   }
@@ -443,7 +446,7 @@
       TypeComputeConsolidationData typeComputeConsolidationData) {
     List<String> computeNodeTemplateIds =
         new ArrayList(typeComputeConsolidationData.getAllComputeNodeTemplateIds());
-    List<String> propertiesWithIdenticalVal = getPropertiesWithIdenticalVal();
+    List<String> propertiesWithIdenticalVal = getComputePropertiesWithIdenticalVal();
 
     return arePropertiesSimilarBetweenComputeNodeTemplates(
         serviceTemplate, computeNodeTemplateIds, propertiesWithIdenticalVal)
@@ -534,25 +537,27 @@
 
   private boolean checkPortConsolidation(ServiceTemplate serviceTemplate,
                                          TypeComputeConsolidationData typeComputeConsolidationData,
-                                         ConsolidationData consolidationData) {
+                                         ConsolidationData consolidationData,
+                                         TranslationContext context) {
     return isWantedPortPropertiesUsageIsSimilarInAllPorts(serviceTemplate,
-        typeComputeConsolidationData)
+        typeComputeConsolidationData, context)
         && checkPortRelations(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
         typeComputeConsolidationData, consolidationData);
   }
 
 
   private boolean isWantedPortPropertiesUsageIsSimilarInAllPorts(ServiceTemplate serviceTemplate,
-                                                                 TypeComputeConsolidationData typeComputeConsolidationData) {
+                                                                 TypeComputeConsolidationData typeComputeConsolidationData,
+                                                                 TranslationContext context) {
 
     Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDataCollection =
         typeComputeConsolidationData.getAllComputeTemplateConsolidationData();
-    List<String> propertiesThatNeedHaveUsage = getPropertiesThatNeedHaveUsage();
+    List<String> propertiesThatNeedHaveUsage = getPortPropertiesWithIdenticalVal(context);
     Map<String, Set<String>> portTypeToIds = UnifiedCompositionUtil
         .collectAllPortsFromEachTypesFromComputes(computeTemplateConsolidationDataCollection);
 
     for (Set<String> portsIds : portTypeToIds.values()) {
-      if (!areAllPortsFromSameTypeHaveTheSameUsageForProperties(
+      if (!areAllPortsFromSameTypeHaveIdenticalValForProperties(
           serviceTemplate, portsIds, propertiesThatNeedHaveUsage)) {
         return false;
       }
@@ -603,7 +608,7 @@
     return portTemplateConsolidationDataList;
   }
 
-  private boolean areAllPortsFromSameTypeHaveTheSameUsageForProperties(
+  private boolean areAllPortsFromSameTypeHaveIdenticalValForProperties(
       ServiceTemplate serviceTemplate,
       Set<String> portNodeTemplateIds,
       List<String> propertiesThatNeedToHaveUsage) {
@@ -611,7 +616,7 @@
         serviceTemplate.getTopology_template().getNode_templates();
 
     for (String property : propertiesThatNeedToHaveUsage) {
-      if (!areAllPortsContainWantedProperty(property, portNodeTemplateIds, nodeTemplates)) {
+      if (!areAllPortsHaveIdenticalValForProperties(property, portNodeTemplateIds, nodeTemplates)) {
         return false;
       }
     }
@@ -619,7 +624,7 @@
     return true;
   }
 
-  private boolean areAllPortsContainWantedProperty(
+  private boolean areAllPortsHaveIdenticalValForProperties(
       String propertyToCheck,
       Set<String> portNodeTemplateIds,
       Map<String, NodeTemplate> nodeTemplates) {
@@ -634,9 +639,6 @@
           .build());
     }
 
-    boolean startingUsageCondition =
-        startingPortNodeTemplate.getProperties().containsKey(propertyToCheck);
-
     for (int i = 1; i < portNodeTemplateIdList.size(); i++) {
       NodeTemplate portNodeTemplate = nodeTemplates.get(portNodeTemplateIdList.get(i));
 
@@ -647,8 +649,7 @@
                 + "files").build());
       }
 
-      Map<String, Object> properties = portNodeTemplate.getProperties();
-      if (!(properties.containsKey(propertyToCheck) == startingUsageCondition)) {
+      if (!isPropertySimilarBetweenNodeTemplates(propertyToCheck, portNodeTemplateIdList, nodeTemplates)) {
         return false;
       }
     }
@@ -666,7 +667,7 @@
         serviceTemplate.getTopology_template().getNode_templates();
 
     for (String property : propertiesThatNeedToBeSimilar) {
-      if (!isPropertySimilarBetweenComputeNodeTemplates(property, computeNodeTemplateIds,
+      if (!isPropertySimilarBetweenNodeTemplates(property, computeNodeTemplateIds,
           idToNodeTemplate)) {
         return false;
       }
@@ -674,17 +675,28 @@
     return true;
   }
 
-  private boolean isPropertySimilarBetweenComputeNodeTemplates(
+  private boolean isPropertySimilarBetweenNodeTemplates(
       String propertyToCheck,
-      List<String> computeNodeTemplateIds,
+      List<String> entityNodeTemplateIds,
       Map<String, NodeTemplate> idToNodeTemplate) {
+
+    NodeTemplate startingNodeTemplate = idToNodeTemplate.get(entityNodeTemplateIds.get(0));
+    boolean propertyExistCondition =
+        isPropertyExistInNodeTemplate(propertyToCheck, startingNodeTemplate);
+
     Set<Object> propertiesValues = new HashSet<>();
-    for (String computeNodeId : computeNodeTemplateIds) {
-      NodeTemplate currentNodeTemplate = idToNodeTemplate.get(computeNodeId);
+    propertiesValues
+        .add(startingNodeTemplate.getProperties().get(propertyToCheck));
+
+    for (int i = 1; i < entityNodeTemplateIds.size(); i++) {
+      NodeTemplate currentNodeTemplate = idToNodeTemplate.get(entityNodeTemplateIds.get(i));
       if (Objects.isNull(currentNodeTemplate)) {
         throw new CoreException((new ErrorCode.ErrorCodeBuilder())
             .withMessage("Resource with id "
-                + computeNodeId + " occures more than once in different addOn files").build());
+                + entityNodeTemplateIds.get(i) + " occures more than once in different addOn files").build());
+      }
+      if(propertyExistCondition != isPropertyExistInNodeTemplate(propertyToCheck, currentNodeTemplate)){
+        return false;
       }
       propertiesValues
           .add(currentNodeTemplate.getProperties().get(propertyToCheck));
@@ -693,6 +705,10 @@
     return propertiesValues.size() == 1;
   }
 
+  private boolean isPropertyExistInNodeTemplate(String propertyToCheck, NodeTemplate nodeTemplate){
+    return !(nodeTemplate.getProperties() == null || nodeTemplate.getProperties().get(propertyToCheck) == null);
+  }
+
   public void substitutionServiceTemplateConsolidation(String substituteNodeTemplateId,
                                                        ServiceTemplate mainServiceTemplate,
                                                        ServiceTemplate substitutionServiceTemplate,
@@ -918,19 +934,38 @@
             .getPorts().keySet();
   }
 
-  List<String> getPropertiesWithIdenticalVal() {
+  public List<String> getPropertiesWithIdenticalVal(UnifiedCompositionEntity entity,
+                                                    TranslationContext context){
+    switch (entity){
+      case Compute:
+        return getComputePropertiesWithIdenticalVal();
+
+      case Other:
+        return getComputePropertiesWithIdenticalVal();
+
+      case Port:
+        return getPortPropertiesWithIdenticalVal(context);
+
+      default:
+        return new ArrayList<>();
+    }
+  }
+
+  private List<String> getComputePropertiesWithIdenticalVal() {
     List<String> propertyWithIdenticalValue = new ArrayList<>();
     propertyWithIdenticalValue.add(ToscaConstants.COMPUTE_IMAGE);
     propertyWithIdenticalValue.add(ToscaConstants.COMPUTE_FLAVOR);
     return propertyWithIdenticalValue;
   }
 
-  private List<String> getPropertiesThatNeedHaveUsage() {
+  private List<String> getPortPropertiesWithIdenticalVal(TranslationContext context) {
     List<String> propertiesThatNeedToHaveUsage = new ArrayList<>();
     propertiesThatNeedToHaveUsage.add(ToscaConstants.PORT_FIXED_IPS);
     propertiesThatNeedToHaveUsage.add(ToscaConstants.PORT_ALLOWED_ADDRESS_PAIRS);
     propertiesThatNeedToHaveUsage.add(ToscaConstants.MAC_ADDRESS);
 
+    propertiesThatNeedToHaveUsage.addAll(context.getEnrichPortResourceProperties());
+
     return propertiesThatNeedToHaveUsage;
   }
 }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
index e5d7527..6399086 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
@@ -64,8 +64,9 @@
   public static final String SERVICE_INSTANCE_PORT_PREFIX = "port_";
   public static final String SERVICE_INSTANCE_LINK_PREFIX = "link_";
   //Unified model
-  public static final String IDENTICAL_VALUE_PROPERTY_PREFIX = "vm_";
-  public static final String IDENTICAL_VALUE_PROPERTY_SUFFIX = "_name";
+  public static final String COMPUTE_IDENTICAL_VALUE_PROPERTY_PREFIX = "vm_";
+  public static final String COMPUTE_IDENTICAL_VALUE_PROPERTY_SUFFIX = "_name";
+  public static final String PORT_IDENTICAL_VALUE_PROPERTY_PREFIX = "port_";
   public static final String ABSTRACT_NODE_TEMPLATE_ID_PREFIX = "abstract_";
 
   private Constants() {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java
index 336d56a..6523a92 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java
@@ -93,8 +93,9 @@
 import java.util.regex.Pattern;
 
 import static org.openecomp.sdc.translator.services.heattotosca.Constants.ABSTRACT_NODE_TEMPLATE_ID_PREFIX;
-import static org.openecomp.sdc.translator.services.heattotosca.Constants.IDENTICAL_VALUE_PROPERTY_PREFIX;
-import static org.openecomp.sdc.translator.services.heattotosca.Constants.IDENTICAL_VALUE_PROPERTY_SUFFIX;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.COMPUTE_IDENTICAL_VALUE_PROPERTY_PREFIX;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.COMPUTE_IDENTICAL_VALUE_PROPERTY_SUFFIX;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.PORT_IDENTICAL_VALUE_PROPERTY_PREFIX;
 
 public class UnifiedCompositionService {
 
@@ -229,7 +230,7 @@
     substitutionNodeTemplate.setType(substituteNodeTemplateType);
     Optional<Map<String, Object>> abstractSubstitutionProperties =
         createAbstractSubstitutionProperties(serviceTemplate,
-            substitutionServiceTemplate, unifiedCompositionDataList);
+            substitutionServiceTemplate, unifiedCompositionDataList, context);
     abstractSubstitutionProperties.ifPresent(substitutionNodeTemplate::setProperties);
 
     //Add substitution filtering property
@@ -1527,9 +1528,10 @@
         portTemplateConsolidationData.getNodeTemplateId(), serviceTemplate, context).clone();
 
     removeConnectivityOut(portTemplateConsolidationData, newPortNodeTemplate);
-    handleProperties(serviceTemplate, newPortNodeTemplate, substitutionServiceTemplate,
-        UnifiedCompositionEntity.Port, portTemplateConsolidationDataList,
-        computeTemplateConsolidationData, unifiedCompositionDataList, context);
+    handleProperties(serviceTemplate, newPortNodeTemplate,
+        substitutionServiceTemplate, UnifiedCompositionEntity.Port,
+        portTemplateConsolidationDataList, computeTemplateConsolidationData,
+        unifiedCompositionDataList, context);
 
     String newPortNodeTemplateId =
         getNewPortNodeTemplateId(portTemplateConsolidationData
@@ -1604,9 +1606,10 @@
     List<EntityConsolidationData> computeConsoliadtionDataList =
         getComputeConsolidationDataList(unifiedCompositionDataList);
 
-    handleProperties(serviceTemplate, newComputeNodeTemplate, substitutionServiceTemplate,
-        UnifiedCompositionEntity.Compute, computeConsoliadtionDataList,
-        computeTemplateConsolidationData, unifiedCompositionDataList, context);
+    handleProperties(serviceTemplate, newComputeNodeTemplate,
+        substitutionServiceTemplate, UnifiedCompositionEntity.Compute,
+        computeConsoliadtionDataList, computeTemplateConsolidationData, unifiedCompositionDataList,
+        context);
 
     String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
         computeTemplateConsolidationData.getNodeTemplateId());
@@ -1635,7 +1638,8 @@
   }
 
 
-  private void handleProperties(ServiceTemplate serviceTemplate, NodeTemplate nodeTemplate,
+  private void handleProperties(ServiceTemplate serviceTemplate,
+                                NodeTemplate nodeTemplate,
                                 ServiceTemplate substitutionServiceTemplate,
                                 UnifiedCompositionEntity unifiedCompositionEntity,
                                 List<EntityConsolidationData> entityConsolidationDataList,
@@ -1664,7 +1668,9 @@
                                                 computeTemplateConsolidationData,
                                             List<UnifiedCompositionData> unifiedCompositionDataList,
                                             TranslationContext context) {
-    List<String> propertiesWithIdenticalVal = consolidationService.getPropertiesWithIdenticalVal();
+    List<String> propertiesWithIdenticalVal =
+        consolidationService.getPropertiesWithIdenticalVal(unifiedCompositionEntity, context);
+
     for (EntityConsolidationData entityConsolidationData : entityConsolidationDataList) {
       String nodeTemplateId = entityConsolidationData.getNodeTemplateId();
       Map<String, Object> properties =
@@ -1674,9 +1680,22 @@
       }
 
       for (Map.Entry<String, Object> propertyEntry : properties.entrySet()) {
+        NodeType nodeTypeWithFlatHierarchy =
+            HeatToToscaUtil.getNodeTypeWithFlatHierarchy(nodeTemplate.getType(), serviceTemplate,
+                context);
+        PropertyDefinition propertyDefinition =
+            nodeTypeWithFlatHierarchy.getProperties().get(propertyEntry.getKey());
+        String propertyType = propertyDefinition.getType();
+
         if (propertiesWithIdenticalVal.contains(propertyEntry.getKey())) {
-          String parameterId = updateIdenticalProperty(nodeTemplate, propertyEntry.getKey());
-          addInputParameter(parameterId, PropertyType.STRING.getDisplayName(), null,
+          String parameterId =
+              updateIdenticalProperty(nodeTemplateId, propertyEntry.getKey(), nodeTemplate,
+                  unifiedCompositionEntity, unifiedCompositionDataList);
+
+          addInputParameter(
+              parameterId, propertyType,
+              propertyType.equals(PropertyType.LIST.getDisplayName()) ? propertyDefinition
+                  .getEntry_schema() : null,
               substitutionServiceTemplate);
         } else {
           Optional<String> parameterId =
@@ -1685,12 +1704,6 @@
                   unifiedCompositionDataList,
                   context);
           //todo - define list of type which will match the node property type (instead of string)
-          NodeType nodeTypeWithFlatHierarchy =
-              HeatToToscaUtil.getNodeTypeWithFlatHierarchy(nodeTemplate.getType(), serviceTemplate,
-                  context);
-          String propertyType =
-              nodeTypeWithFlatHierarchy.getProperties().get(propertyEntry.getKey())
-                  .getType();
           addPropertyInputParameter(propertyType, substitutionServiceTemplate, parameterId);
         }
       }
@@ -1830,16 +1843,61 @@
             (String) value));
   }
 
-  private String updateIdenticalProperty(NodeTemplate nodeTemplate, String propertyId) {
-    Map<String, String> propertyVal = new HashMap<>();
-    String inputParamId = IDENTICAL_VALUE_PROPERTY_PREFIX + propertyId
-        + IDENTICAL_VALUE_PROPERTY_SUFFIX;
-    propertyVal.put(ToscaFunctions.GET_INPUT.getDisplayName(), inputParamId);
-    nodeTemplate.getProperties().put(propertyId, propertyVal);
+  private String updateIdenticalProperty(String nodeTemplateId, String propertyId,
+                                         NodeTemplate nodeTemplate,
+                                         UnifiedCompositionEntity unifiedCompositionEntity,
+                                         List<UnifiedCompositionData> unifiedCompositionDataList) {
+
+    String inputParamId;
+    Map<String, Object> propertyVal = new HashMap<>();
+
+    switch (unifiedCompositionEntity) {
+      case Compute:
+        inputParamId = COMPUTE_IDENTICAL_VALUE_PROPERTY_PREFIX + propertyId
+            + COMPUTE_IDENTICAL_VALUE_PROPERTY_SUFFIX;
+
+        propertyVal.put(ToscaFunctions.GET_INPUT.getDisplayName(), inputParamId);
+        nodeTemplate.getProperties().put(propertyId, propertyVal);
+
+        return inputParamId;
+
+      case Port:
+        String portType = ConsolidationDataUtil.getPortType(nodeTemplateId);
+        ComputeTemplateConsolidationData computeTemplateConsolidationData =
+            getConnectedComputeConsolidationData(unifiedCompositionDataList, nodeTemplateId);
+        inputParamId = getInputParamIdForPort(nodeTemplateId, propertyId, portType,
+            computeTemplateConsolidationData);
+
+        propertyVal.put(ToscaFunctions.GET_INPUT.getDisplayName(), inputParamId);
+        nodeTemplate.getProperties().put(propertyId, propertyVal);
+
+        return inputParamId;
+
+      default:
+        return null;
+    }
+  }
+
+  private String getInputParamIdForPort(String nodeTemplateId, String propertyId, String portType,
+                                        ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+    String inputParamId;
+    if (Objects.isNull(computeTemplateConsolidationData)
+        || computeTemplateConsolidationData.getPorts().get(portType).size() > 1) {
+      inputParamId =
+          UnifiedCompositionEntity.Port.name().toLowerCase() + "_" + nodeTemplateId + "_" +
+              propertyId;
+
+    } else {
+      inputParamId =
+          UnifiedCompositionEntity.Port.name().toLowerCase() + "_" + portType + "_"
+              + propertyId;
+    }
     return inputParamId;
   }
 
-  private void addInputParameter(String parameterId, String parameterType, EntrySchema entrySchema,
+  private void addInputParameter(String parameterId,
+                                 String parameterType,
+                                 EntrySchema entrySchema,
                                  ServiceTemplate serviceTemplate) {
 
     ParameterDefinition parameterDefinition =
@@ -1948,7 +2006,7 @@
         return getNewComputeNodeTemplateId(serviceTemplate, nodeTemplateId);
       case Port:
         ComputeTemplateConsolidationData connectedComputeConsolidationData =
-            getConnectedComputeConsolidationData(serviceTemplate,
+            getConnectedComputeConsolidationData(
                 unifiedCompositionDataList, nodeTemplateId);
         NodeTemplate connectedComputeNodeTemplate =
             DataModelUtil.getNodeTemplate(serviceTemplate,
@@ -1968,10 +2026,10 @@
 
     if (isIdIsOfExpectedType(origNodeTemplateId, UnifiedCompositionEntity.Port,
         serviceTemplateFileName,
-        consolidationData, context)) {
+        context)) {
       return handleIdOfPort(origNodeTemplateId, serviceTemplateFileName, consolidationData);
     } else if (isIdIsOfExpectedType(origNodeTemplateId, UnifiedCompositionEntity.Compute,
-        serviceTemplateFileName, consolidationData, context)) {
+        serviceTemplateFileName, context)) {
       NodeTemplate nodeTemplate =
           getComputeNodeTemplate(origNodeTemplateId, serviceTemplate, context);
       return getComputeTypeSuffix(nodeTemplate.getType());
@@ -1981,18 +2039,20 @@
   }
 
   private ComputeTemplateConsolidationData getConnectedComputeConsolidationData(
-      ServiceTemplate serviceTemplate,
       List<UnifiedCompositionData> unifiedCompositionDataList,
       String portNodeTemplateId) {
     for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
       Collection<List<String>> portsCollection =
           unifiedCompositionData.getComputeTemplateConsolidationData().getPorts().values();
       for (List<String> portIdList : portsCollection) {
-        for (String portId : portIdList) {
-          if (portId.equals(portNodeTemplateId)) {
-            return unifiedCompositionData.getComputeTemplateConsolidationData();
-          }
+        if (portIdList.contains(portNodeTemplateId)) {
+          return unifiedCompositionData.getComputeTemplateConsolidationData();
         }
+//        for (String portId : portIdList) {
+//          if (portId.equals(portNodeTemplateId)) {
+//            return unifiedCompositionData.getComputeTemplateConsolidationData();
+//          }
+//        }
       }
     }
     return null;
@@ -2098,7 +2158,8 @@
   private Optional<Map<String, Object>> createAbstractSubstitutionProperties(
       ServiceTemplate serviceTemplate,
       ServiceTemplate substitutionServiceTemplate,
-      List<UnifiedCompositionData> unifiedCompositionDataList) {
+      List<UnifiedCompositionData> unifiedCompositionDataList,
+      TranslationContext context) {
     Map<String, Object> abstractSubstituteProperties = new LinkedHashMap<>();
     Map<String, ParameterDefinition> substitutionTemplateInputs = DataModelUtil
         .getInputParameters(substitutionServiceTemplate);
@@ -2114,20 +2175,27 @@
       String substitutionTemplateInputName = input.getKey();
       ParameterDefinition inputParameterDefinition = input.getValue();
       String inputType = inputParameterDefinition.getType();
+      UnifiedCompositionEntity inputUnifiedCompositionEntity =
+          getInputCompositionEntity(substitutionTemplateInputName);
+
       if (!inputType.equalsIgnoreCase(PropertyType.LIST.getDisplayName())) {
-        if (isIdenticalValueProperty(substitutionTemplateInputName)) {
+        if (isIdenticalValueProperty(
+            substitutionTemplateInputName, inputUnifiedCompositionEntity, context)) {
           //Handle identical value properties
-          Object abstractPropertyValue = getPropertyValueFromNodeTemplate(
-              getIdenticalValuePropertyName(substitutionTemplateInputName),
-              firstComputeNodeTemplate);
-          abstractSubstituteProperties.put(substitutionTemplateInputName, abstractPropertyValue);
+          Optional<String> identicalValuePropertyName =
+              getIdenticalValuePropertyName(substitutionTemplateInputName,
+                  inputUnifiedCompositionEntity, context);
+
+          if (identicalValuePropertyName.isPresent()) {
+            updateIdenticalPropertyValue(identicalValuePropertyName.get(),
+                substitutionTemplateInputName, computeType, inputUnifiedCompositionEntity,
+                unifiedCompositionDataList.get(0), serviceTemplate, abstractSubstituteProperties);
+          }
         }
         continue;
       }
 
       //Check if the input is of type compute or port
-      UnifiedCompositionEntity inputUnifiedCompositionEntity = getInputCompositionEntity(
-          substitutionTemplateInputName);
       List<Object> abstractPropertyValue = new ArrayList<>();
       Object propertyValue = null;
       switch (inputUnifiedCompositionEntity) {
@@ -2144,8 +2212,6 @@
           break;
         case Port:
           for (UnifiedCompositionData compositionData : unifiedCompositionDataList) {
-            ComputeTemplateConsolidationData computeTemplateConsolidationData = compositionData
-                .getComputeTemplateConsolidationData();
             List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
                 getPortTemplateConsolidationDataList(compositionData);
             //Get the input type for this input whether it is of type
@@ -2157,7 +2223,7 @@
               //Get the port property value
               String portNodeTemplateId = portTemplateConsolidationData.getNodeTemplateId();
               propertyValue = getPortPropertyValue(substitutionTemplateInputName,
-                  computeType, portInputType, serviceTemplate, computeTemplateConsolidationData,
+                  computeType, portInputType, serviceTemplate,
                   portNodeTemplateId);
               //If the value object is Optional.empty it implies that the property name was not
               // found in the input name
@@ -2181,6 +2247,70 @@
     return Optional.ofNullable(abstractSubstituteProperties);
   }
 
+  private void updateIdenticalPropertyValue(String identicalValuePropertyName,
+                                            String substitutionTemplateInputName,
+                                            String computeType,
+                                            UnifiedCompositionEntity entity,
+                                            UnifiedCompositionData unifiedCompositionData,
+                                            ServiceTemplate serviceTemplate,
+                                            Map<String, Object> abstractSubstituteProperties){
+    Optional<Object> identicalPropertyValueByType =
+        getIdenticalPropertyValueByType(identicalValuePropertyName, substitutionTemplateInputName,
+            computeType, entity, unifiedCompositionData, serviceTemplate);
+
+    if(identicalPropertyValueByType.isPresent()){
+      abstractSubstituteProperties
+          .put(substitutionTemplateInputName, identicalPropertyValueByType.get());
+
+    }
+
+
+  }
+
+  private Optional<Object> getIdenticalPropertyValueByType(String identicalValuePropertyName,
+                                                           String substitutionTemplateInputName,
+                                                           String computeType,
+                                                           UnifiedCompositionEntity entity,
+                                                           UnifiedCompositionData unifiedCompositionData,
+                                                           ServiceTemplate serviceTemplate) {
+
+    ComputeTemplateConsolidationData computeTemplateConsolidationData =
+        unifiedCompositionData.getComputeTemplateConsolidationData();
+
+    Optional<Object> computeIdenticalPropertyValue;
+    switch (entity) {
+      case Compute:
+        computeIdenticalPropertyValue =
+            getIdenticalPropertyValue(identicalValuePropertyName, serviceTemplate,
+                entity, computeTemplateConsolidationData);
+        return computeIdenticalPropertyValue.isPresent() ? Optional.of(
+            computeIdenticalPropertyValue.get()) : Optional.empty();
+
+      case Other:
+        computeIdenticalPropertyValue =
+            getIdenticalPropertyValue(identicalValuePropertyName, serviceTemplate,
+                entity, computeTemplateConsolidationData);
+        return computeIdenticalPropertyValue.isPresent() ? Optional.of(
+            computeIdenticalPropertyValue.get()) : Optional.empty();
+
+      case Port:
+        List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+            unifiedCompositionData.getPortTemplateConsolidationDataList();
+        for (PortTemplateConsolidationData portTemplateConsolidationData : portTemplateConsolidationDataList) {
+          String portType =
+              ConsolidationDataUtil.getPortType(portTemplateConsolidationData.getNodeTemplateId());
+          if (substitutionTemplateInputName.contains(portType)) {
+            return getIdenticalPropertyValue(identicalValuePropertyName, serviceTemplate,
+                entity, portTemplateConsolidationData);
+          }
+        }
+    }
+
+    return Optional.empty();
+
+  }
+
+
   private PortInputType getPortInputType(String inputName,
                                          UnifiedCompositionData unifiedCompositionData) {
     String portInputPrefix = UnifiedCompositionEntity.Port.name().toLowerCase() + "_";
@@ -2291,7 +2421,6 @@
     String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
     Optional<String> nestedNodeTemplateId =
         context.getUnifiedNestedNodeTemplateId(serviceTemplateFileName, entity.getNodeTemplateId());
-
     if (nestedNodeTemplateId.isPresent()) {
       for (Map.Entry<String, GroupDefinition> groupEntry : groups.entrySet()) {
         GroupDefinition groupDefinition = groupEntry.getValue();
@@ -2514,7 +2643,6 @@
   private boolean isIdIsOfExpectedType(String id,
                                        UnifiedCompositionEntity expectedUnifiedCompositionEntity,
                                        String serviceTemplateFileName,
-                                       ConsolidationData consolidationData,
                                        TranslationContext context) {
     UnifiedSubstitutionData unifiedSubstitutionData =
         context.getUnifiedSubstitutionData().get(serviceTemplateFileName);
@@ -2537,11 +2665,9 @@
                                       String computeType,
                                       PortInputType portInputType,
                                       ServiceTemplate serviceTemplate,
-                                      ComputeTemplateConsolidationData
-                                          computeTemplateConsolidationData,
                                       String portNodeTemplateId) {
     //Get the input prefix to extract the property name from the input name
-    String portInputPrefix = getPortInputPrefix(computeTemplateConsolidationData,
+    String portInputPrefix = getPortInputPrefix(
         portNodeTemplateId, portInputType);
     //Get the property name from the input
     Optional<String> propertyName = getPropertyNameFromInput(inputName,
@@ -2593,6 +2719,20 @@
     return Optional.empty();
   }
 
+  private Optional<Object> getIdenticalPropertyValue(String identicalValuePropertyName,
+                                                     ServiceTemplate serviceTemplate,
+                                                     UnifiedCompositionEntity unifiedCompositionEntity,
+                                                     EntityConsolidationData entity){
+    NodeTemplate nodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+        entity.getNodeTemplateId());
+
+    Object propertyValueFromNodeTemplate =
+        getPropertyValueFromNodeTemplate(identicalValuePropertyName, nodeTemplate);
+
+    return Objects.isNull(propertyValueFromNodeTemplate) ? Optional.empty()
+    :Optional.of(propertyValueFromNodeTemplate);
+  }
+
   private UnifiedCompositionEntity getInputCompositionEntity(String inputName) {
     UnifiedCompositionEntity inputCompositionEntity = UnifiedCompositionEntity.Other;
     String inputType = inputName.substring(0, inputName.indexOf('_'));
@@ -2626,7 +2766,6 @@
   }
 
   private String getPortInputPrefix(
-      ComputeTemplateConsolidationData computeTemplateConsolidationData,
       String portNodeTemplateId,
       PortInputType portInputType) {
     String portInputPrefix = UnifiedCompositionEntity.Port.name().toLowerCase() + "_";
@@ -2639,21 +2778,101 @@
     return portInputPrefix;
   }
 
-  private boolean isIdenticalValueProperty(String inputName) {
-    StringBuilder builder = new StringBuilder(IDENTICAL_VALUE_PROPERTY_PREFIX);
-    builder.append("[a-z]+");
-    builder.append(IDENTICAL_VALUE_PROPERTY_SUFFIX);
+  private boolean isIdenticalValueProperty(String inputName,
+                                           UnifiedCompositionEntity unifiedCompositionEntity,
+                                           TranslationContext context) {
+
+    List<String> identicalValuePropertyList =
+        consolidationService.getPropertiesWithIdenticalVal(unifiedCompositionEntity, context);
+
+    StringBuilder builder = getPropertyValueStringBuilder(unifiedCompositionEntity);
+
     boolean isMatchingProperty = Pattern.matches(builder.toString(), inputName);
-    List<String> identicalValuePropertyList = consolidationService.getPropertiesWithIdenticalVal();
-    if (isMatchingProperty
-        && identicalValuePropertyList.contains(getIdenticalValuePropertyName(inputName))) {
-      return true;
-    }
-    return false;
+    return (isMatchingProperty
+        && isPropertyFromIdenticalValuesList(inputName, unifiedCompositionEntity,
+        identicalValuePropertyList));
   }
 
-  private String getIdenticalValuePropertyName(String input) {
-    return input.split("_")[1];
+  private boolean isPropertyFromIdenticalValuesList(String inputName,
+                                                    UnifiedCompositionEntity unifiedCompositionEntity,
+                                                    List<String> identicalValuePropertyList) {
+    switch (unifiedCompositionEntity) {
+      case Compute:
+        return identicalValuePropertyList.contains(getIdenticalValuePropertyName(inputName,
+            unifiedCompositionEntity, null).get());
+
+      case Other:
+        return identicalValuePropertyList.contains(getIdenticalValuePropertyName(inputName,
+            unifiedCompositionEntity, null).get());
+
+      case Port:
+        return getPortPropertyNameFromInput(inputName, identicalValuePropertyList).isPresent();
+
+      default:
+        return false;
+    }
+  }
+
+  private Optional<String> getPortPropertyNameFromInput(String inputName,
+                                                        List<String> identicalValuePropertyList) {
+    for (String identicalProperty : identicalValuePropertyList) {
+      if (inputName.contains(identicalProperty)) {
+        return Optional.of(identicalProperty);
+      }
+    }
+    return Optional.empty();
+  }
+
+  private StringBuilder getPropertyValueStringBuilder(
+      UnifiedCompositionEntity unifiedCompositionEntity) {
+
+    switch (unifiedCompositionEntity) {
+      case Compute:
+        return getComputePropertyValueStringBuilder();
+
+      case Other:
+        return getComputePropertyValueStringBuilder();
+
+      case Port:
+        return getPortPropertyValueStringBuilder();
+
+      default:
+        return null;
+    }
+  }
+
+  private StringBuilder getPortPropertyValueStringBuilder() {
+    StringBuilder builder;
+    builder = new StringBuilder(PORT_IDENTICAL_VALUE_PROPERTY_PREFIX);
+    builder.append(".+");
+    return builder;
+  }
+
+  private StringBuilder getComputePropertyValueStringBuilder() {
+    StringBuilder builder;
+    builder = new StringBuilder(COMPUTE_IDENTICAL_VALUE_PROPERTY_PREFIX);
+    builder.append("[a-z]+");
+    builder.append(COMPUTE_IDENTICAL_VALUE_PROPERTY_SUFFIX);
+    return builder;
+  }
+
+  private Optional<String> getIdenticalValuePropertyName(String input,
+                                                         UnifiedCompositionEntity unifiedCompositionEntity,
+                                                         TranslationContext context) {
+    switch (unifiedCompositionEntity) {
+      case Compute:
+        return Optional.of(input.split("_")[1]);
+
+      case Other:
+        return Optional.of(input.split("_")[1]);
+
+      case Port:
+        return getPortPropertyNameFromInput(input, consolidationService
+            .getPropertiesWithIdenticalVal(unifiedCompositionEntity, context));
+
+      default:
+        return Optional.empty();
+    }
   }
 
   private Object getPropertyValueFromNodeTemplate(String propertyName, NodeTemplate nodeTemplate) {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java
index 61777a6..b525191 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java
@@ -508,6 +508,53 @@
   }
 
   @Test
+  public void testFalseComputeConsolidationOneImageNameMissing() throws IOException {
+    ConsolidationData consolidationData = new ConsolidationData();
+    String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.pd_server";
+    ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+        ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_missing",
+            null, null);
+
+    TestUtils.initComputeNodeTypeInConsolidationData(
+        mainST, computeNodeTypeName, consolidationData);
+
+    List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+    portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+    portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_pd01",
+        null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_pd02",
+        null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_pd03",
+        null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    TestUtils.initPortConsolidationData(mainST, consolidationData);
+    TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+        null, null, null, null, null,
+        consolidationData);
+    TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+        null, null, null, null, null,
+        consolidationData);
+
+    translationContext.setConsolidationData(consolidationData);
+    List<UnifiedCompositionMode> expectedUnifiedModes =
+        Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+    verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+  }
+
+  @Test
   public void testFalseComputeConsolidationForTwoSimilarFlavorNamesAndOneDiff() throws IOException {
     ConsolidationData consolidationData = new ConsolidationData();
     String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
@@ -551,6 +598,53 @@
   }
 
   @Test
+  public void testFalsePortConsolidationForOneDiffFixedIpsValue() throws IOException {
+    ConsolidationData consolidationData = new ConsolidationData();
+    String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+    ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+        ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_exCP_naming_diff",
+            null, null);
+
+    TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+    List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+    portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    portTypeToIdList = new ArrayList<>();
+    portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    portTypeToIdList = new ArrayList<>();
+    portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+    TestUtils.updateComputeTemplateConsolidationData(
+        mainST,
+        computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+        portTypeToIdList, consolidationData);
+
+    TestUtils.initPortConsolidationData(mainST, consolidationData);
+    TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+        null, null, null, null, null,
+        consolidationData);
+
+    translationContext.setConsolidationData(consolidationData);
+    List<UnifiedCompositionMode> expectedUnifiedModes =
+        Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+    verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+  }
+
+  @Test
+  public void testFalsePortConsolidationForOneDiffExpcNaming(){
+
+  }
+
+  @Test
   public void testFalsePortConsolidationForTwoPortsWithFixedIpsAndOneWithout() throws IOException {
     ConsolidationData consolidationData = new ConsolidationData();
     String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_exCP_naming_diff/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_exCP_naming_diff/MainServiceTemplate.yaml
new file mode 100644
index 0000000..d73bbef
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_exCP_naming_diff/MainServiceTemplate.yaml
@@ -0,0 +1,201 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+  template_name: Main
+imports:
+- CommonGlobalTypes:
+    file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+    file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+    file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+    file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+    file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+    file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+    file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+    file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+    file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+    file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+    file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+    file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+    file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+    file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+    file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+    file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+  org.openecomp.resource.vfc.nodes.heat.ps_server:
+    derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+  inputs:
+    availabilityzone_name:
+      label: availabilityzone name
+      hidden: false
+      immutable: false
+      type: string
+      description: availabilityzone name
+      default: nova
+    repl_net_ips:
+      label: repl network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ips of repl network
+      default:
+      - 107.239.33.57
+      - 107.239.33.58
+      entry_schema:
+        type: string
+    oam_net_name:
+      label: oam network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the oam network
+      default: oam_protected_net_0
+    oam_net_ips:
+      label: internet network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ip of the OAM network
+      default:
+      - 107.250.172.213
+      - 107.250.172.214
+      - 107.250.172.215
+      - 107.250.172.216
+      - 107.250.172.217
+      entry_schema:
+        type: string
+      default: 169.254.1.4
+    ps_server_names:
+      label: PS server names
+      hidden: false
+      immutable: false
+      type: list
+      description: name of the PS instance
+      default:
+      - ZRDM1MOGX01MPS001
+      - ZRDM1MOGX01MPS002
+      - ZRDM1MOGX01MPS003
+      - ZRDM1MOGX01MPS004
+      entry_schema:
+        type: string
+    csb_net_ips:
+      hidden: false
+      immutable: false
+      type: list
+      description: mog_csb_net IP addresses
+      default:
+      - 172.26.0.10
+      - 172.26.0.11
+      - 172.26.0.12
+      - 172.26.0.13
+      - 172.26.0.14
+      - 172.26.0.15
+      - 172.26.0.16
+      - 172.26.0.17
+      - 172.26.0.18
+      - 172.26.0.19
+      - 172.26.0.20
+      entry_schema:
+        type: string
+    ps_flavor_name:
+      label: PS flavor name
+      hidden: false
+      immutable: false
+      type: string
+      description: flavor name of PS instance
+      default: m3.xlarge
+    ps_image_name:
+      label: PS image name
+      hidden: false
+      immutable: false
+      type: string
+      description: PS image name
+      default: MOG_BASE_8.0
+    repl_net_name:
+      label: Replication network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the replication network
+      default: cor_direct_net_0
+  node_templates:
+    cm01_port_1:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        exCP_naming:
+          get_input:
+          - port_FSB2_Internal2_exCP_naming
+          - index_value
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    cm01_port_2:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        exCP_naming:
+          get_input:
+          - port_FSB2_Internal2_exCP_naming
+          - index_value
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    cm01_port_3:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        exCP_naming:
+          diff_value
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    server_ps01:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
+
+    server_ps02:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
+
+    server_ps03:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
\ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_fixed_ips_diff/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_fixed_ips_diff/MainServiceTemplate.yaml
new file mode 100644
index 0000000..8a3eb21
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_fixed_ips_diff/MainServiceTemplate.yaml
@@ -0,0 +1,204 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+  template_name: Main
+imports:
+- CommonGlobalTypes:
+    file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+    file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+    file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+    file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+    file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+    file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+    file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+    file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+    file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+    file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+    file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+    file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+    file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+    file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+    file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+    file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+  org.openecomp.resource.vfc.nodes.heat.ps_server:
+    derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+  inputs:
+    availabilityzone_name:
+      label: availabilityzone name
+      hidden: false
+      immutable: false
+      type: string
+      description: availabilityzone name
+      default: nova
+    repl_net_ips:
+      label: repl network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ips of repl network
+      default:
+      - 107.239.33.57
+      - 107.239.33.58
+      entry_schema:
+        type: string
+    oam_net_name:
+      label: oam network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the oam network
+      default: oam_protected_net_0
+    oam_net_ips:
+      label: internet network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ip of the OAM network
+      default:
+      - 107.250.172.213
+      - 107.250.172.214
+      - 107.250.172.215
+      - 107.250.172.216
+      - 107.250.172.217
+      entry_schema:
+        type: string
+      default: 169.254.1.4
+    ps_server_names:
+      label: PS server names
+      hidden: false
+      immutable: false
+      type: list
+      description: name of the PS instance
+      default:
+      - ZRDM1MOGX01MPS001
+      - ZRDM1MOGX01MPS002
+      - ZRDM1MOGX01MPS003
+      - ZRDM1MOGX01MPS004
+      entry_schema:
+        type: string
+    csb_net_ips:
+      hidden: false
+      immutable: false
+      type: list
+      description: mog_csb_net IP addresses
+      default:
+      - 172.26.0.10
+      - 172.26.0.11
+      - 172.26.0.12
+      - 172.26.0.13
+      - 172.26.0.14
+      - 172.26.0.15
+      - 172.26.0.16
+      - 172.26.0.17
+      - 172.26.0.18
+      - 172.26.0.19
+      - 172.26.0.20
+      entry_schema:
+        type: string
+    ps_flavor_name:
+      label: PS flavor name
+      hidden: false
+      immutable: false
+      type: string
+      description: flavor name of PS instance
+      default: m3.xlarge
+    ps_image_name:
+      label: PS image name
+      hidden: false
+      immutable: false
+      type: string
+      description: PS image name
+      default: MOG_BASE_8.0
+    repl_net_name:
+      label: Replication network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the replication network
+      default: cor_direct_net_0
+  node_templates:
+    cm01_port_1:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        fixed_ips:
+        - ip_address:
+            get_input:
+            - oam_net_ips
+            - 4
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    cm01_port_2:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        fixed_ips:
+        - ip_address:
+            get_input:
+            - oam_net_ips
+            - 4
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    cm01_port_3:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        fixed_ips:
+        - ip_address:
+            diff_value
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    server_ps01:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
+
+    server_ps02:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
+
+    server_ps03:
+      type: org.openecomp.resource.vfc.nodes.heat.ps_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_input: ps_image_name
\ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_missing/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_missing/MainServiceTemplate.yaml
new file mode 100644
index 0000000..9e3d82d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_missing/MainServiceTemplate.yaml
@@ -0,0 +1,188 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+  template_name: Main
+imports:
+- CommonGlobalTypes:
+    file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+    file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+    file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+    file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+    file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+    file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+    file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+    file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+    file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+    file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+    file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+    file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+    file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+    file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+    file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+    file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+  org.openecomp.resource.vfc.nodes.heat.ps_server:
+    derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+  inputs:
+    availabilityzone_name:
+      label: availabilityzone name
+      hidden: false
+      immutable: false
+      type: string
+      description: availabilityzone name
+      default: nova
+    repl_net_ips:
+      label: repl network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ips of repl network
+      default:
+      - 107.239.33.57
+      - 107.239.33.58
+      entry_schema:
+        type: string
+    oam_net_name:
+      label: oam network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the oam network
+      default: oam_protected_net_0
+    oam_net_ips:
+      label: internet network ips
+      hidden: false
+      immutable: false
+      type: list
+      description: ip of the OAM network
+      default:
+      - 107.250.172.213
+      - 107.250.172.214
+      - 107.250.172.215
+      - 107.250.172.216
+      - 107.250.172.217
+      entry_schema:
+        type: string
+      default: 169.254.1.4
+    ps_server_names:
+      label: PS server names
+      hidden: false
+      immutable: false
+      type: list
+      description: name of the PS instance
+      default:
+      - ZRDM1MOGX01MPS001
+      - ZRDM1MOGX01MPS002
+      - ZRDM1MOGX01MPS003
+      - ZRDM1MOGX01MPS004
+      entry_schema:
+        type: string
+    csb_net_ips:
+      hidden: false
+      immutable: false
+      type: list
+      description: mog_csb_net IP addresses
+      default:
+      - 172.26.0.10
+      - 172.26.0.11
+      - 172.26.0.12
+      - 172.26.0.13
+      - 172.26.0.14
+      - 172.26.0.15
+      - 172.26.0.16
+      - 172.26.0.17
+      - 172.26.0.18
+      - 172.26.0.19
+      - 172.26.0.20
+      entry_schema:
+        type: string
+    ps_flavor_name:
+      label: PS flavor name
+      hidden: false
+      immutable: false
+      type: string
+      description: flavor name of PS instance
+      default: m3.xlarge
+    ps_image_name:
+      label: PS image name
+      hidden: false
+      immutable: false
+      type: string
+      description: PS image name
+      default: MOG_BASE_8.0
+    repl_net_name:
+      label: Replication network name
+      hidden: false
+      immutable: false
+      type: string
+      description: name of the replication network
+      default: cor_direct_net_0
+  node_templates:
+    cm01_port_1:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        fixed_ips:
+        - ip_address:
+            get_input:
+            - oam_net_ips
+            - 4
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    sm01_port_1:
+      type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+      properties:
+        fixed_ips:
+        - ip_address:
+            get_input:
+            - oam_net_ips
+            - 4
+        allowed_address_pairs:
+          get_input:
+          - interface_list
+          - 2
+          - allowed_address_pairs
+        mac_address:
+          get_input: ncb1_internal1_mac_address
+
+    server_pd01:
+      type: org.openecomp.resource.vfc.nodes.heat.pd_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_attr: [a, b, c, get_input: {get_input: ps_flavor_name}, d, e]
+
+    server_pd02:
+      type: org.openecomp.resource.vfc.nodes.heat.pd_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
+        image:
+          get_attr: [a, b, c, get_input: {get_input: ps_flavor_name}, d, e]
+
+    server_pd03:
+      type: org.openecomp.resource.vfc.nodes.heat.pd_server
+      properties:
+        flavor:
+          get_input: ps_flavor_name
\ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 3f0bbea..2898c1c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -466,11 +464,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -480,7 +476,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -893,11 +889,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -907,7 +901,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml
index b3be41a..41584e5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml
@@ -86,7 +86,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: diff_image_name
@@ -127,7 +127,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -168,7 +168,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml
index 6a96d70..1bc9130 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml
index 1efd8dc..2d57f7a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml
index 08e5895..9f866dd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b85ce67..aa565d5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -472,11 +468,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -486,7 +480,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -512,11 +506,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -899,11 +891,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -913,7 +903,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -939,11 +929,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml
index 89aa2d4..124197d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml
@@ -184,7 +184,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -196,8 +196,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -229,7 +228,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -241,8 +240,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -269,7 +267,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -281,8 +279,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml
index 3d11cad..12f329b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml
index 1efd8dc..d3fd0f6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml
index 08e5895..97b7689 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 3f0bbea..2898c1c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -466,11 +464,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -480,7 +476,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -893,11 +889,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -907,7 +901,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml
index 4187b3b..82972b9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml
@@ -85,7 +85,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -131,7 +131,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -172,7 +172,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml
index 6a96d70..1bc9130 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml
index 1efd8dc..2d57f7a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml
index 08e5895..9f866dd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml
index 3f0f9ed..e020410 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml
@@ -174,7 +174,7 @@
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_0
 
   1c1_scalling_instance_network:
@@ -200,14 +200,14 @@
     type: OS::Neutron::Port
     properties:
       network: {get_resource: 1c1_scalling_instance_network}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t1_port_1
 
   1c1_t2_port_1:
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_1
 
   1c201_catalog_instance_1C2:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml
index a921a8e..3c2e834 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -1500,11 +1500,9 @@
         entry_schema:
           type: string
       port_1c1_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -1514,7 +1512,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -1542,7 +1540,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t2_port_network:
         type: list
         required: true
@@ -1554,7 +1552,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t1_port_vlan_requirements:
         type: list
         required: true
@@ -1566,13 +1564,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c1_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -1594,11 +1590,9 @@
         entry_schema:
           type: integer
       port_1c1_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_1c1_scalling_instance_availability_zone:
         type: list
         required: true
@@ -2103,13 +2097,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -2127,11 +2119,9 @@
         entry_schema:
           type: string
       port_1a_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1a_t1_port_network:
         type: list
         required: true
@@ -2153,7 +2143,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t1_port_vlan_requirements:
         type: list
         required: true
@@ -2241,11 +2231,9 @@
         entry_schema:
           type: string
       port_1a_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
     attributes:
       a_single_1a_instance_name:
         type: list
@@ -2701,7 +2689,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -2743,11 +2731,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -2779,7 +2765,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_value_specs:
         type: list
         required: true
@@ -2787,11 +2773,9 @@
         entry_schema:
           type: json
       port_1b_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1b_t1_port_subnetpoolid:
         type: list
         required: true
@@ -2799,11 +2783,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -3323,13 +3305,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3375,11 +3355,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3393,17 +3371,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -3905,13 +3881,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3951,11 +3925,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3969,17 +3941,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -4441,7 +4411,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -4483,11 +4453,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -4519,7 +4487,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role_tag:
         type: list
         required: true
@@ -4539,11 +4507,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml
index 700c94b..dbdf934 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml
@@ -146,9 +146,7 @@
         compute_1c1_scalling_instance_user_data_format:
         - RAW2
         - RAW1
-        port_1c1_t2_port_network_role_tag:
-        - ppds
-        - ppds
+        port_1c1_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1c1_t1_port_ip_requirements:
@@ -181,11 +179,11 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 4
+              - 1
         - - ip_address:
               get_input:
               - myIPs
-              - 2
+              - 1
         port_1c1_t2_port_network:
         - get_input: ppds_net_name
         - get_input: ppds_net_name
@@ -193,7 +191,7 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 3
+              - 1
         - - ip_address:
               get_input:
               - myIPs
@@ -210,14 +208,10 @@
             floating_ip_count_required:
               is_required: false
         port_1c1_t1_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c1_t2_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c1_scalling_instance_availability_zone:
         - get_input: availabilityzone_name
@@ -289,7 +283,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -327,7 +321,7 @@
             - abstract_1c1_scalling_instance
             - 1c1_scalling_instance_1c1_t1_port_tenant_id
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
@@ -371,7 +365,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -411,12 +405,11 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - RAW1
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -456,7 +449,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -467,14 +460,13 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - get_attribute:
           - abstract_1c2_catalog_instance_0
           - 1c2_catalog_instance_instance_name
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -667,14 +659,13 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1a_t2_port_network_role_tag:
-        - ppds
+        port_1a_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1a_t2_port_network:
         - get_input: ppds_net_name
         port_1a_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1a_t1_port_network:
         - a_single_1a_network
@@ -697,7 +688,7 @@
           - a_single_1a_names
           - 0
         port_1a_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
@@ -890,7 +881,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -906,10 +897,9 @@
         - get_attribute:
           - abstract_a_single_1a
           - a_single_1a_1a_t1_port_tenant_id
-        port_1b_t1_port_network_role_tag:
-        - oam
+        port_1b_t1_port_network_role_tag: oam
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
index f6b0a50..4682b9b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -27,10 +27,8 @@
       entry_schema:
         type: string
     port_1c1_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -38,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -61,7 +59,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t2_port_network:
       type: list
       required: true
@@ -71,7 +69,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t1_port_vlan_requirements:
       type: list
       required: true
@@ -81,12 +79,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c1_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -105,10 +101,8 @@
       entry_schema:
         type: integer
     port_1c1_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_1c1_scalling_instance_availability_zone:
       type: list
       required: true
@@ -172,17 +166,13 @@
           - port_1c1_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c1_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c1_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t1_port_mac_requirements
         order:
           get_input:
           - port_1c1_t1_port_order
@@ -196,9 +186,7 @@
           - port_1c1_t1_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t1_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t1_port_fixed_ips
         name:
           get_input:
           - port_1c1_t1_port_name
@@ -251,17 +239,11 @@
           - port_1c1_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c1_t2_port_network_role_tag
-          - index_value
+          get_input: port_1c1_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c1_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t2_port_mac_requirements
         order:
           get_input:
           - port_1c1_t2_port_order
@@ -275,9 +257,7 @@
           - port_1c1_t2_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t2_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t2_port_fixed_ips
         name:
           get_input:
           - port_1c1_t2_port_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
index 7a43948..29c1fd0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -110,10 +108,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -125,15 +121,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -179,17 +173,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -223,17 +213,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -482,4 +466,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
index ab88e26..5a7b354 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -473,4 +457,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml
index c0ea9ef..1b03129 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml
@@ -20,12 +20,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -40,10 +38,8 @@
       entry_schema:
         type: string
     port_1a_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1a_t1_port_network:
       type: list
       required: true
@@ -61,7 +57,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t1_port_vlan_requirements:
       type: list
       required: true
@@ -135,10 +131,8 @@
       entry_schema:
         type: string
     port_1a_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
   node_templates:
     a_single_1a_1a_t1_port:
       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
@@ -152,17 +146,13 @@
           - port_1a_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t1_port_ip_requirements
-          - index_value
+          get_input: port_1a_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1a_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1a_t1_port_mac_requirements
-          - index_value
+          get_input: port_1a_t1_port_mac_requirements
         order:
           get_input:
           - port_1a_t1_port_order
@@ -223,17 +213,11 @@
           - port_1a_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t2_port_ip_requirements
-          - index_value
+          get_input: port_1a_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1a_t2_port_network_role_tag
-          - index_value
+          get_input: port_1a_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1a_t2_port_mac_requirements
-          - index_value
+          get_input: port_1a_t2_port_mac_requirements
         order:
           get_input:
           - port_1a_t2_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml
index 1b859d5..a9aa171 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,7 +96,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role_tag:
       type: list
       required: true
@@ -115,10 +113,8 @@
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -174,17 +170,13 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -218,17 +210,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -477,4 +465,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml
index 1feba0f..8ccdfdc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,27 +96,23 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_value_specs:
       type: list
       required: true
       entry_schema:
         type: json
     port_1b_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1b_t1_port_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -179,17 +173,11 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1b_t1_port_network_role_tag
-          - index_value
+          get_input: port_1b_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -223,17 +211,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -482,4 +466,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml
index ac384f8..157ec3f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml
@@ -176,7 +176,7 @@
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_0
 
   1c1_scalling_instance_network:
@@ -204,14 +204,14 @@
     type: OS::Neutron::Port
     properties:
       network: {get_resource: 1c1_scalling_instance_network}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t1_port_1
 
   1c1_t2_port_1:
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_1
 
   1c201_catalog_instance_1C2:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 536511a..6884de5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -1492,11 +1492,9 @@
         entry_schema:
           type: string
       port_1c1_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -1506,7 +1504,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -1534,7 +1532,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t2_port_network:
         type: list
         required: true
@@ -1546,7 +1544,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t1_port_vlan_requirements:
         type: list
         required: true
@@ -1558,13 +1556,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c1_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -1586,11 +1582,9 @@
         entry_schema:
           type: integer
       port_1c1_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_1c1_scalling_instance_availability_zone:
         type: list
         required: true
@@ -2078,13 +2072,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -2102,11 +2094,9 @@
         entry_schema:
           type: string
       port_1a_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1a_t1_port_network:
         type: list
         required: true
@@ -2128,7 +2118,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t1_port_vlan_requirements:
         type: list
         required: true
@@ -2216,11 +2206,9 @@
         entry_schema:
           type: string
       port_1a_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
     attributes:
       a_single_1a_instance_name:
         type: list
@@ -2676,7 +2664,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -2718,11 +2706,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -2754,13 +2740,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1b_t1_port_subnetpoolid:
         type: list
         required: true
@@ -2768,11 +2752,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -3292,13 +3274,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3338,11 +3318,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3356,17 +3334,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -3868,13 +3844,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3914,11 +3888,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3932,17 +3904,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -4441,11 +4411,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -4483,7 +4451,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role:
         type: list
         required: true
@@ -4511,7 +4479,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -4523,11 +4491,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml
index 68f812e..d9747ff 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml
@@ -118,9 +118,7 @@
         compute_1c1_scalling_instance_user_data_format:
         - RAW2
         - RAW1
-        port_1c1_t2_port_network_role_tag:
-        - ppds
-        - ppds
+        port_1c1_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1c1_t1_port_ip_requirements:
@@ -153,11 +151,11 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 4
+              - 1
         - - ip_address:
               get_input:
               - myIPs
-              - 2
+              - 1
         port_1c1_t2_port_network:
         - get_input: ppds_net_name
         - get_input: ppds_net_name
@@ -165,7 +163,7 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 3
+              - 1
         - - ip_address:
               get_input:
               - myIPs
@@ -182,14 +180,10 @@
             floating_ip_count_required:
               is_required: false
         port_1c1_t1_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c1_t2_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c1_scalling_instance_availability_zone:
         - get_input: availabilityzone_name
@@ -223,7 +217,7 @@
       - substitutable
       properties:
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -246,7 +240,7 @@
         vm_image_name:
           get_input: pd_image_name
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
@@ -305,7 +299,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -316,12 +310,11 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - RAW1
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -365,7 +358,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -376,14 +369,13 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - get_attribute:
           - abstract_1c2_catalog_instance_0
           - 1c2_catalog_instance_instance_name
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -594,14 +586,13 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1a_t2_port_network_role_tag:
-        - ppds
+        port_1a_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1a_t2_port_network:
         - get_input: ppds_net_name
         port_1a_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1a_t1_port_network:
         - a_single_1a_network
@@ -624,7 +615,7 @@
           - a_single_1a_names
           - 0
         port_1a_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
@@ -793,7 +784,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -805,10 +796,9 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1b_t1_port_network_role_tag:
-        - oam
+        port_1b_t1_port_network_role_tag: oam
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
index 3a93e4c..a742c1b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -27,10 +27,8 @@
       entry_schema:
         type: string
     port_1c1_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -38,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -61,7 +59,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t2_port_network:
       type: list
       required: true
@@ -71,7 +69,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t1_port_vlan_requirements:
       type: list
       required: true
@@ -81,12 +79,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c1_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -105,10 +101,8 @@
       entry_schema:
         type: integer
     port_1c1_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_1c1_scalling_instance_availability_zone:
       type: list
       required: true
@@ -167,17 +161,13 @@
           - port_1c1_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c1_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c1_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t1_port_mac_requirements
         order:
           get_input:
           - port_1c1_t1_port_order
@@ -191,9 +181,7 @@
           - port_1c1_t1_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t1_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t1_port_fixed_ips
         name:
           get_input:
           - port_1c1_t1_port_name
@@ -242,17 +230,11 @@
           - port_1c1_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c1_t2_port_network_role_tag
-          - index_value
+          get_input: port_1c1_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c1_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t2_port_mac_requirements
         order:
           get_input:
           - port_1c1_t2_port_order
@@ -266,9 +248,7 @@
           - port_1c1_t2_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t2_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t2_port_fixed_ips
         name:
           get_input:
           - port_1c1_t2_port_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
index 80b876b..0dcaa54 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
index ab88e26..89a8927 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml
index 33152e6..92e5080 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml
@@ -15,12 +15,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -35,10 +33,8 @@
       entry_schema:
         type: string
     port_1a_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1a_t1_port_network:
       type: list
       required: true
@@ -56,7 +52,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t1_port_vlan_requirements:
       type: list
       required: true
@@ -130,10 +126,8 @@
       entry_schema:
         type: string
     port_1a_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
   node_templates:
     a_single_1a_1a_t1_port:
       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
@@ -147,17 +141,13 @@
           - port_1a_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t1_port_ip_requirements
-          - index_value
+          get_input: port_1a_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1a_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1a_t1_port_mac_requirements
-          - index_value
+          get_input: port_1a_t1_port_mac_requirements
         order:
           get_input:
           - port_1a_t1_port_order
@@ -214,17 +204,11 @@
           - port_1a_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t2_port_ip_requirements
-          - index_value
+          get_input: port_1a_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1a_t2_port_network_role_tag
-          - index_value
+          get_input: port_1a_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1a_t2_port_mac_requirements
-          - index_value
+          get_input: port_1a_t2_port_mac_requirements
         order:
           get_input:
           - port_1a_t2_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml
index cbfebea..f02eb09 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -47,7 +45,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role:
       type: list
       required: true
@@ -70,7 +68,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -80,10 +78,8 @@
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -165,17 +161,13 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -209,17 +201,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml
index 23f2383..e277f32 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,22 +96,18 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1b_t1_port_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -170,17 +164,11 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1b_t1_port_network_role_tag
-          - index_value
+          get_input: port_1b_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -214,17 +202,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml
index 64c7ca7..4b27b08 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml
@@ -148,7 +148,7 @@
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_0
 
   1c1_scalling_instance_network:
@@ -174,14 +174,14 @@
     type: OS::Neutron::Port
     properties:
       network: {get_resource: 1c1_scalling_instance_network}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t1_port_1
 
   1c1_t2_port_1:
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_1
 
   1c201_catalog_instance_1C2:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml
index f0a9da5..801b398 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -1492,11 +1492,9 @@
         entry_schema:
           type: string
       port_1c1_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -1506,7 +1504,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -1534,7 +1532,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t2_port_network:
         type: list
         required: true
@@ -1546,7 +1544,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t1_port_vlan_requirements:
         type: list
         required: true
@@ -1558,13 +1556,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c1_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -1586,11 +1582,9 @@
         entry_schema:
           type: integer
       port_1c1_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_1c1_scalling_instance_availability_zone:
         type: list
         required: true
@@ -2078,13 +2072,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -2102,11 +2094,9 @@
         entry_schema:
           type: string
       port_1a_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1a_t1_port_network:
         type: list
         required: true
@@ -2128,7 +2118,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t1_port_vlan_requirements:
         type: list
         required: true
@@ -2216,11 +2206,9 @@
         entry_schema:
           type: string
       port_1a_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
     attributes:
       a_single_1a_instance_name:
         type: list
@@ -2676,7 +2664,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -2718,11 +2706,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -2754,13 +2740,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1b_t1_port_subnetpoolid:
         type: list
         required: true
@@ -2768,11 +2752,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -3292,13 +3274,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3338,11 +3318,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3356,17 +3334,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -3868,13 +3844,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -3914,11 +3888,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -3932,17 +3904,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -4378,11 +4348,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -4420,7 +4388,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role:
         type: list
         required: true
@@ -4448,7 +4416,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -4460,11 +4428,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -4943,4 +4909,4 @@
         type: tosca.capabilities.Node
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml
index 26ab893..957f77e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml
@@ -114,9 +114,7 @@
         compute_1c1_scalling_instance_user_data_format:
         - RAW2
         - RAW1
-        port_1c1_t2_port_network_role_tag:
-        - ppds
-        - ppds
+        port_1c1_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1c1_t1_port_ip_requirements:
@@ -149,11 +147,11 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 4
+              - 1
         - - ip_address:
               get_input:
               - myIPs
-              - 2
+              - 1
         port_1c1_t2_port_network:
         - get_input: ppds_net_name
         - get_input: ppds_net_name
@@ -161,7 +159,7 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 3
+              - 1
         - - ip_address:
               get_input:
               - myIPs
@@ -178,14 +176,10 @@
             floating_ip_count_required:
               is_required: false
         port_1c1_t1_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c1_t2_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c1_scalling_instance_availability_zone:
         - get_input: availabilityzone_name
@@ -215,7 +209,7 @@
       - substitutable
       properties:
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -238,7 +232,7 @@
         vm_image_name:
           get_input: pd_image_name
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
@@ -284,7 +278,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -295,12 +289,11 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - RAW1
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -340,7 +333,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -351,14 +344,13 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - get_attribute:
           - abstract_1c2_catalog_instance_0
           - 1c2_catalog_instance_instance_name
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -515,14 +507,13 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1a_t2_port_network_role_tag:
-        - ppds
+        port_1a_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1a_t2_port_network:
         - get_input: ppds_net_name
         port_1a_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1a_t1_port_network:
         - a_single_1a_network
@@ -545,7 +536,7 @@
           - a_single_1a_names
           - 0
         port_1a_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
@@ -706,7 +697,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -718,10 +709,9 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1b_t1_port_network_role_tag:
-        - oam
+        port_1b_t1_port_network_role_tag: oam
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network
@@ -854,4 +844,4 @@
         name: def
         affinity: host
       targets:
-      - BE_Affinity_group
\ No newline at end of file
+      - BE_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
index 3a93e4c..161490e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -27,10 +27,8 @@
       entry_schema:
         type: string
     port_1c1_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -38,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -61,7 +59,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t2_port_network:
       type: list
       required: true
@@ -71,7 +69,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t1_port_vlan_requirements:
       type: list
       required: true
@@ -81,12 +79,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c1_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -105,10 +101,8 @@
       entry_schema:
         type: integer
     port_1c1_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_1c1_scalling_instance_availability_zone:
       type: list
       required: true
@@ -167,17 +161,13 @@
           - port_1c1_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c1_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c1_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t1_port_mac_requirements
         order:
           get_input:
           - port_1c1_t1_port_order
@@ -191,9 +181,7 @@
           - port_1c1_t1_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t1_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t1_port_fixed_ips
         name:
           get_input:
           - port_1c1_t1_port_name
@@ -242,17 +230,11 @@
           - port_1c1_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c1_t2_port_network_role_tag
-          - index_value
+          get_input: port_1c1_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c1_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t2_port_mac_requirements
         order:
           get_input:
           - port_1c1_t2_port_order
@@ -266,9 +248,7 @@
           - port_1c1_t2_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t2_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t2_port_fixed_ips
         name:
           get_input:
           - port_1c1_t2_port_name
@@ -509,4 +489,4 @@
       - link
       local_storage_1c1_scalling_instance:
       - 1c1_scalling_instance
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
index 80b876b..01a6ef2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -473,4 +457,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
index ab88e26..5a7b354 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -473,4 +457,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml
index 33152e6..17f4474 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml
@@ -15,12 +15,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -35,10 +33,8 @@
       entry_schema:
         type: string
     port_1a_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1a_t1_port_network:
       type: list
       required: true
@@ -56,7 +52,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t1_port_vlan_requirements:
       type: list
       required: true
@@ -130,10 +126,8 @@
       entry_schema:
         type: string
     port_1a_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
   node_templates:
     a_single_1a_1a_t1_port:
       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
@@ -147,17 +141,13 @@
           - port_1a_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t1_port_ip_requirements
-          - index_value
+          get_input: port_1a_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1a_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1a_t1_port_mac_requirements
-          - index_value
+          get_input: port_1a_t1_port_mac_requirements
         order:
           get_input:
           - port_1a_t1_port_order
@@ -214,17 +204,11 @@
           - port_1a_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t2_port_ip_requirements
-          - index_value
+          get_input: port_1a_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1a_t2_port_network_role_tag
-          - index_value
+          get_input: port_1a_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1a_t2_port_mac_requirements
-          - index_value
+          get_input: port_1a_t2_port_mac_requirements
         order:
           get_input:
           - port_1a_t2_port_order
@@ -473,4 +457,4 @@
       - dependency
       local_storage_a_single_1a:
       - a_single_1a
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml
index cbfebea..f167185 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -47,7 +45,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role:
       type: list
       required: true
@@ -70,7 +68,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -80,10 +78,8 @@
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -165,17 +161,13 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -209,17 +201,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -468,4 +456,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml
index 23f2383..33830f7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,22 +96,18 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1b_t1_port_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -170,17 +164,11 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1b_t1_port_network_role_tag
-          - index_value
+          get_input: port_1b_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -214,17 +202,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -473,4 +457,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml
index 77ef2c8..12bcc16 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml
@@ -310,7 +310,7 @@
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_01
 
   1c1_scalling_instance_network:
@@ -353,14 +353,14 @@
     type: OS::Neutron::Port
     properties:
       network: {get_resource: 1c1_scalling_instance_network}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t1_port_11
 
   1c1_t2_port_11:
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_11
 
   1c101_scalling_instance_1C12:
@@ -403,7 +403,7 @@
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_02
 
   1c102_scalling_instance_1C12:
@@ -440,14 +440,14 @@
     type: OS::Neutron::Port
     properties:
       network: {get_resource: 1c1_scalling_instance_network}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t1_port_12
 
   1c1_t2_port_12:
     type: OS::Neutron::Port
     properties:
       network: {get_param: ppds_net_name}
-      fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+      fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
       name: 1c1_t2_port_12
 
   ########################################    CATALOG INSTANCES (Pattern 1C2)  #####################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 19dc9b1..54047d5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -943,7 +943,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       compute_1c12_scalling_instance_name:
         type: list
         required: true
@@ -957,11 +957,9 @@
         entry_schema:
           type: json
       port_1c1_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -985,7 +983,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -1393,7 +1391,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_1c1_t1_port_vlan_requirements:
         type: list
         required: true
@@ -1401,11 +1399,9 @@
         entry_schema:
           type: json
       port_1c1_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -1441,7 +1437,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -2418,7 +2414,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t1_port_network_role_tag:
         type: list
         required: true
@@ -2454,11 +2450,9 @@
         required: true
         status: SUPPORTED
       port_1a_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1a_t1_port_network:
         type: list
         required: true
@@ -2905,13 +2899,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -2951,11 +2943,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -2969,17 +2959,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -3420,13 +3408,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t2_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       vm_flavor_name:
         type: string
         required: true
@@ -3444,11 +3430,9 @@
         entry_schema:
           type: string
       port_1a_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1a_t1_port_network:
         type: list
         required: true
@@ -3470,7 +3454,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1a_t1_port_vlan_requirements:
         type: list
         required: true
@@ -3558,11 +3542,9 @@
         entry_schema:
           type: string
       port_1a_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
     attributes:
       a_single_1a_instance_name:
         type: list
@@ -4058,13 +4040,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -4104,11 +4084,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -4122,17 +4100,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -4594,7 +4570,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -4636,11 +4612,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -4672,7 +4646,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_network_role_tag:
         type: list
         required: true
@@ -4692,11 +4666,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -5210,13 +5182,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -5262,11 +5232,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -5280,17 +5248,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -5792,13 +5758,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1c2_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t1_port_network_role:
         type: list
         required: true
@@ -5838,11 +5802,9 @@
         entry_schema:
           type: string
       port_1c2_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1c2_t2_port_vlan_requirements:
         type: list
         required: true
@@ -5856,17 +5818,15 @@
         entry_schema:
           type: string
       port_1c2_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1c2_t1_port_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_1c2_catalog_instance_scheduler_hints:
         type: list
         required: true
@@ -6329,7 +6289,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -6377,11 +6337,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -6401,7 +6359,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_b_single_2b_name:
         type: list
         required: true
@@ -6427,11 +6385,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -6894,7 +6850,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -6936,11 +6892,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_b_single_1b_availability_zone:
         type: list
         required: true
@@ -6972,7 +6926,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_1b_t1_port_value_specs:
         type: list
         required: true
@@ -6980,11 +6934,9 @@
         entry_schema:
           type: json
       port_1b_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1b_t1_port_subnetpoolid:
         type: list
         required: true
@@ -6992,11 +6944,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -7476,7 +7426,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -7524,11 +7474,9 @@
         entry_schema:
           type: string
       port_1b_t2_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -7548,7 +7496,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       compute_b_single_2b_name:
         type: list
         required: true
@@ -7568,11 +7516,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_1b_t1_port_subnetpoolid:
         type: list
         required: true
@@ -7580,11 +7526,9 @@
         entry_schema:
           type: string
       port_1b_t1_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_1b_t2_port_network:
         type: list
         required: true
@@ -8022,4 +7966,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml
index d61ea01..fa3ffd6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml
@@ -297,7 +297,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -308,14 +308,13 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - get_attribute:
           - abstract_1c2_catalog_instance_1
           - 1c2_catalog_instance_instance_name
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -355,7 +354,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -366,14 +365,13 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - get_attribute:
           - abstract_1c2_catalog_instance_0
           - 1c2_catalog_instance_instance_name
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -413,7 +411,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -493,12 +491,11 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - RAW1
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -538,7 +535,7 @@
             floating_ip_count_required:
               is_required: false
         port_1c2_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1c2_t2_port_network:
         - 1c2_catalog_instance_network
@@ -549,12 +546,11 @@
         port_1c2_t1_port_network:
         - get_input: oam_net_name
         port_1c2_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_1c2_catalog_instance_user_data_format:
         - RAW1
-        port_1c2_t1_port_network_role_tag:
-        - oam
+        port_1c2_t1_port_network_role_tag: oam
         port_1c2_t1_port_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -714,14 +710,13 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_1a_t2_port_network_role_tag:
-        - ppds
+        port_1a_t2_port_network_role_tag: ppds
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1a_t2_port_network:
         - get_input: ppds_net_name
         port_1a_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1a_t1_port_network:
         - a_single_1a_network
@@ -744,7 +739,7 @@
           - a_single_1a_names
           - 0
         port_1a_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
@@ -875,7 +870,7 @@
         compute_b_single_2b_availability_zone:
         - get_input: availabilityzone_name
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_ip_requirements:
         - - ip_version: 4
@@ -893,10 +888,9 @@
           - a_single_1a_1a_t1_port_tenant_id
         compute_b_single_2b_user_data_format:
         - RAW
-        port_1b_t1_port_network_role_tag:
-        - oam
+        port_1b_t1_port_network_role_tag: oam
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network_2
@@ -1026,9 +1020,7 @@
               - myIPs
               - 1
         port_1c1_t1_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
@@ -1165,7 +1157,7 @@
         compute_b_single_2b_availability_zone:
         - get_input: availabilityzone_name
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_ip_requirements:
         - - ip_version: 4
@@ -1180,7 +1172,7 @@
         compute_b_single_2b_user_data_format:
         - RAW
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network_2
@@ -1219,11 +1211,11 @@
         - - ip_address:
               get_input:
               - myIPs
-              - 3
+              - 1
         - - ip_address:
               get_input:
               - myIPs
-              - 3
+              - 1
         compute_1c12_scalling_instance_name:
         - get_input:
           - 1c12_scalling_instance_names
@@ -1232,9 +1224,7 @@
           - 1c12_scalling_instance_names
           - 2
         port_1c1_t1_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
@@ -1426,7 +1416,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_1a_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1a_t1_port_network:
         - a_single_1a_network
@@ -1531,7 +1521,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -1547,10 +1537,9 @@
         - get_attribute:
           - abstract_a_single_1a
           - a_single_1a_1a_t1_port_tenant_id
-        port_1b_t1_port_network_role_tag:
-        - oam
+        port_1b_t1_port_network_role_tag: oam
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network_1
@@ -1586,7 +1575,7 @@
         - ip_address:
             get_input:
             - myIPs
-            - 2
+            - 1
         mac_requirements:
           mac_count_required:
             is_required: false
@@ -1607,7 +1596,7 @@
         - ip_address:
             get_input:
             - myIPs
-            - 2
+            - 1
         mac_requirements:
           mac_count_required:
             is_required: false
@@ -1723,7 +1712,7 @@
         - ip_address:
             get_input:
             - myIPs
-            - 4
+            - 1
         mac_requirements:
           mac_count_required:
             is_required: false
@@ -1744,7 +1733,7 @@
         - ip_address:
             get_input:
             - myIPs
-            - 4
+            - 1
         mac_requirements:
           mac_count_required:
             is_required: false
@@ -1775,7 +1764,7 @@
         compute_b_single_1b_user_data_format:
         - RAW
         port_1b_t2_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_b_single_1b_availability_zone:
         - get_input: availabilityzone_name
@@ -1853,7 +1842,7 @@
             - abstract_1c2_catalog_instance_1
             - 1c2_catalog_instance_instance_name
         port_1b_t1_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_1b_t2_port_network:
         - b_single_1b_network_1
@@ -2004,4 +1993,4 @@
         name: def
         affinity: host
       targets:
-      - BE_Affinity_group
\ No newline at end of file
+      - BE_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml
index a249ecf..05bdd39 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml
@@ -20,17 +20,15 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_1c1_t1_port_vlan_requirements:
       type: list
       required: true
       entry_schema:
         type: json
     port_1c1_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -60,7 +58,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -135,17 +133,13 @@
           - port_1c1_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c1_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c1_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t1_port_mac_requirements
         order:
           get_input:
           - port_1c1_t1_port_order
@@ -159,9 +153,7 @@
           - port_1c1_t1_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t1_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t1_port_fixed_ips
         name:
           get_input:
           - port_1c1_t1_port_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml
index 90c0f22..451e87c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml
@@ -25,7 +25,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     compute_1c12_scalling_instance_name:
       type: list
       required: true
@@ -37,10 +37,8 @@
       entry_schema:
         type: json
     port_1c1_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -60,7 +58,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -112,17 +110,13 @@
           - port_1c1_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c1_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c1_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c1_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c1_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c1_t1_port_mac_requirements
         order:
           get_input:
           - port_1c1_t1_port_order
@@ -136,9 +130,7 @@
           - port_1c1_t1_port_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_1c1_t1_port_fixed_ips
-          - index_value
+          get_input: port_1c1_t1_port_fixed_ips
         name:
           get_input:
           - port_1c1_t1_port_name
@@ -363,4 +355,4 @@
       - dependency
       link_1c12_scalling_instance_1c1_t1_port:
       - 1c12_scalling_instance_1c1_t1_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
index 7a43948..29c1fd0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -110,10 +108,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -125,15 +121,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -179,17 +173,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -223,17 +213,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -482,4 +466,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
index e384bc3..b3db9f4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -465,4 +449,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml
index 1ff0c9b..399b551 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -465,4 +449,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml
index ea49f97..d62c28b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml
@@ -66,12 +66,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1c2_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t1_port_network_role:
       type: list
       required: true
@@ -105,10 +103,8 @@
       entry_schema:
         type: string
     port_1c2_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1c2_t2_port_vlan_requirements:
       type: list
       required: true
@@ -120,15 +116,13 @@
       entry_schema:
         type: string
     port_1c2_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1c2_t1_port_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_1c2_catalog_instance_scheduler_hints:
       type: list
       required: true
@@ -170,17 +164,13 @@
           - port_1c2_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t2_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1c2_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1c2_t2_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t2_port_mac_requirements
         order:
           get_input:
           - port_1c2_t2_port_order
@@ -214,17 +204,11 @@
           - port_1c2_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1c2_t1_port_ip_requirements
-          - index_value
+          get_input: port_1c2_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1c2_t1_port_network_role_tag
-          - index_value
+          get_input: port_1c2_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1c2_t1_port_mac_requirements
-          - index_value
+          get_input: port_1c2_t1_port_mac_requirements
         order:
           get_input:
           - port_1c2_t1_port_order
@@ -473,4 +457,4 @@
       - dependency
       link_1c2_catalog_instance_1c2_t2_port:
       - 1c2_catalog_instance_1c2_t2_port
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml
index c0ea9ef..a1ba0b6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml
@@ -20,12 +20,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t2_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     vm_flavor_name:
       type: string
       required: true
@@ -40,10 +38,8 @@
       entry_schema:
         type: string
     port_1a_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1a_t1_port_network:
       type: list
       required: true
@@ -61,7 +57,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t1_port_vlan_requirements:
       type: list
       required: true
@@ -135,10 +131,8 @@
       entry_schema:
         type: string
     port_1a_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
   node_templates:
     a_single_1a_1a_t1_port:
       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
@@ -152,17 +146,13 @@
           - port_1a_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t1_port_ip_requirements
-          - index_value
+          get_input: port_1a_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1a_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1a_t1_port_mac_requirements
-          - index_value
+          get_input: port_1a_t1_port_mac_requirements
         order:
           get_input:
           - port_1a_t1_port_order
@@ -223,17 +213,11 @@
           - port_1a_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t2_port_ip_requirements
-          - index_value
+          get_input: port_1a_t2_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1a_t2_port_network_role_tag
-          - index_value
+          get_input: port_1a_t2_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1a_t2_port_mac_requirements
-          - index_value
+          get_input: port_1a_t2_port_mac_requirements
         order:
           get_input:
           - port_1a_t2_port_order
@@ -482,4 +466,4 @@
       - dependency
       local_storage_a_single_1a:
       - a_single_1a
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml
index 800932c..3e93b30 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml
@@ -32,7 +32,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1a_t1_port_network_role_tag:
       type: list
       required: true
@@ -62,10 +62,8 @@
       type: string
       required: true
     port_1a_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1a_t1_port_network:
       type: list
       required: true
@@ -134,17 +132,13 @@
           - port_1a_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1a_t1_port_ip_requirements
-          - index_value
+          get_input: port_1a_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1a_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1a_t1_port_mac_requirements
-          - index_value
+          get_input: port_1a_t1_port_mac_requirements
         order:
           get_input:
           - port_1a_t1_port_order
@@ -346,4 +340,4 @@
       - link
       local_storage_a_single_2a:
       - a_single_2a
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml
index d783180..4ec6028 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,27 +96,23 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_value_specs:
       type: list
       required: true
       entry_schema:
         type: json
     port_1b_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1b_t1_port_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -179,17 +173,11 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1b_t1_port_network_role_tag
-          - index_value
+          get_input: port_1b_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -223,17 +211,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -482,4 +466,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml
index b80c2db..2c02204 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,10 +68,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_b_single_1b_availability_zone:
       type: list
       required: true
@@ -98,7 +96,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_1b_t1_port_network_role_tag:
       type: list
       required: true
@@ -115,10 +113,8 @@
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -174,17 +170,13 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -218,17 +210,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -477,4 +465,4 @@
       - link
       dependency_b_single_1b_1b_t2_port:
       - b_single_1b_1b_t2_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml
index 5ce31a4..c479dcb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml
@@ -33,7 +33,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -73,10 +73,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -93,7 +91,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_b_single_2b_name:
       type: list
       required: true
@@ -110,20 +108,16 @@
       entry_schema:
         type: string
     port_1b_t1_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_1b_t1_port_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -179,17 +173,11 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_1b_t1_port_network_role_tag
-          - index_value
+          get_input: port_1b_t1_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -223,17 +211,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -474,4 +458,4 @@
       - dependency
       dependency_b_single_2b_1b_t1_port:
       - b_single_2b_1b_t1_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml
index a8680d8..ce479e9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml
@@ -38,7 +38,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -78,10 +78,8 @@
       entry_schema:
         type: string
     port_1b_t2_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -98,7 +96,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     compute_b_single_2b_name:
       type: list
       required: true
@@ -120,10 +118,8 @@
       entry_schema:
         type: string
     port_1b_t1_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_1b_t2_port_network:
       type: list
       required: true
@@ -174,17 +170,13 @@
           - port_1b_t1_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t1_port_ip_requirements
-          - index_value
+          get_input: port_1b_t1_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t1_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t1_port_mac_requirements
-          - index_value
+          get_input: port_1b_t1_port_mac_requirements
         order:
           get_input:
           - port_1b_t1_port_order
@@ -218,17 +210,13 @@
           - port_1b_t2_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_1b_t2_port_ip_requirements
-          - index_value
+          get_input: port_1b_t2_port_ip_requirements
         network_role_tag:
           get_input:
           - port_1b_t2_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_1b_t2_port_mac_requirements
-          - index_value
+          get_input: port_1b_t2_port_mac_requirements
         order:
           get_input:
           - port_1b_t2_port_order
@@ -469,4 +457,4 @@
       - dependency
       dependency_b_single_2b_1b_t1_port:
       - b_single_2b_1b_t1_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
index c91ab33..6fed982 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -437,4 +435,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml
index cb58589..0903a6a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml
@@ -62,9 +62,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -100,4 +98,4 @@
         heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
         description: heat template that creates MOG stack
       members:
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml
index ce1fbac..04bbe7a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -328,4 +322,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index e073c59..a9ccb59 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -453,4 +451,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml
index 3f3be66..4954b19 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml
@@ -76,9 +76,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -124,4 +122,4 @@
       - network_policy_server_pd_01
       - network_policy_server_pd_02
       - network_policy_port0
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
index 34003c6..7daf8fb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -353,4 +347,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 71c1bf5..0dbf569 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -443,4 +441,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml
index a5a1489..0cf1c53 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml
@@ -71,9 +71,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -122,4 +120,4 @@
         description: heat template that creates MOG stack
       members:
       - network_policy_server
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml
index a4bb6fb..dc62943 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -134,17 +132,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -337,4 +331,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 18abf27..3136da5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -425,4 +423,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml
index baffa1f..31b1660 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml
@@ -59,9 +59,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -94,4 +92,4 @@
         heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
         description: heat template that creates MOG stack
       members:
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml
index 72af3bb..d6694fe 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -115,17 +113,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -318,4 +312,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index d594580..b88eb6a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -51,11 +51,9 @@
         entry_schema:
           type: json
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -65,7 +63,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -443,4 +441,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml
index 8984db0..9b5cc75 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -86,9 +86,7 @@
         - - jsa_security_group
         - - jsa_security_group
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -136,4 +134,4 @@
       members:
       - jsa_security_group
       - resource_with_dependOn
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
index 9aa0aa9..e528b15 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -47,10 +47,8 @@
       entry_schema:
         type: json
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -58,7 +56,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -134,17 +132,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -337,4 +331,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index c91ab33..6fed982 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -437,4 +435,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml
index 8501ed3..482efdf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -91,9 +91,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -159,4 +157,4 @@
       members:
       - packet_mirror_network
       - pd01_volume
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
index ce1fbac..04bbe7a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -328,4 +322,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 27d88f1..c328eaa 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -51,11 +51,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -65,7 +63,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -443,4 +441,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml
index d12bf29..60b3fff 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml
@@ -65,9 +65,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -115,4 +113,4 @@
         name: Policy_BE_Affinity
         affinity: host
       targets:
-      - BE_Affinity_group
\ No newline at end of file
+      - BE_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml
index 16c6ed1..4c4fc34 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml
@@ -47,10 +47,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -58,7 +56,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -134,17 +132,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -337,4 +331,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 8e7dc7a..7bc1ea9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -453,4 +451,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml
index d1b8f72..e25bb65 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -62,9 +62,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -119,4 +117,4 @@
       value:
         get_attribute:
         - abstract_pd_server
-        - pd_server_accessIPv6
\ No newline at end of file
+        - pd_server_accessIPv6
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
index b358a96..8fff979 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -353,4 +347,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 102842a..844c82a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -506,11 +504,9 @@
         entry_schema:
           type: string
       port_ps01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_ps01_port_network:
         type: list
         required: true
@@ -522,7 +518,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_ps01_port_network_role_tag:
         type: list
         required: true
@@ -870,4 +866,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml
index 661adcc..131d2ef 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml
@@ -89,9 +89,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -146,9 +144,7 @@
         - AUTO
         - AUTO
         port_ps01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_ps01_port_network:
         - Network-PS-0
@@ -180,4 +176,4 @@
         description: heat template that creates MOG stack
       members:
       - abstract_pd_server
-      - abstract_ps_server
\ No newline at end of file
+      - abstract_ps_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml
index ce1fbac..04bbe7a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -328,4 +322,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml
index 87e999c..8769a15 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml
@@ -65,10 +65,8 @@
       entry_schema:
         type: string
     port_ps01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_ps01_port_network:
       type: list
       required: true
@@ -78,7 +76,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_ps01_port_network_role_tag:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_ps01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_ps01_port_ip_requirements
-          - index_value
+          get_input: port_ps01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_ps01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_ps01_port_mac_requirements
-          - index_value
+          get_input: port_ps01_port_mac_requirements
         order:
           get_input:
           - port_ps01_port_order
@@ -328,4 +322,4 @@
       - dependency
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 762c7c1..9219263 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -45,11 +45,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -59,7 +57,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -512,11 +510,9 @@
         entry_schema:
           type: string
       port_ps01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_ps01_port_network:
         type: list
         required: true
@@ -528,7 +524,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_ps01_port_network_role_tag:
         type: list
         required: true
@@ -882,4 +878,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml
index 2174bb7..6d3633b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml
@@ -89,9 +89,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -150,9 +148,7 @@
         - AUTO
         - AUTO
         port_ps01_port_mac_requirements:
-        - mac_count_required:
-            is_required: false
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_ps01_port_network:
         - Network-PS-0
@@ -184,4 +180,4 @@
         description: heat template that creates MOG stack
       members:
       - abstract_pd_server
-      - abstract_ps_server
\ No newline at end of file
+      - abstract_ps_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml
index a03be48..f113f41 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -337,4 +331,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml
index f65ddfa..0a16883 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml
@@ -65,10 +65,8 @@
       entry_schema:
         type: string
     port_ps01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_ps01_port_network:
       type: list
       required: true
@@ -78,7 +76,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_ps01_port_network_role_tag:
       type: list
       required: true
@@ -125,17 +123,13 @@
           - port_ps01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_ps01_port_ip_requirements
-          - index_value
+          get_input: port_ps01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_ps01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_ps01_port_mac_requirements
-          - index_value
+          get_input: port_ps01_port_mac_requirements
         order:
           get_input:
           - port_ps01_port_order
@@ -337,4 +331,4 @@
       - dependency
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b003fc2..aedcf16 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -29,11 +29,9 @@
         entry_schema:
           type: string
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -57,17 +55,13 @@
         entry_schema:
           type: string
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd02_port_vlan_requirements:
         type: list
         required: true
@@ -83,7 +77,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -125,13 +119,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -563,4 +555,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml
index 19b518f..c2b9750 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml
@@ -431,14 +431,13 @@
           - pd_server_names
           - 0
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -456,8 +455,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         port_pd02_port_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -477,4 +475,4 @@
         heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
         description: heat template that creates MOG stack
       members:
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml
index 6d0690a..8a9b737 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml
@@ -29,10 +29,8 @@
       entry_schema:
         type: string
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -52,15 +50,11 @@
       entry_schema:
         type: string
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd02_port_vlan_requirements:
       type: list
       required: true
@@ -73,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -108,12 +102,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -205,17 +191,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -447,4 +427,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
index cad5199..8164a93 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_port_network:
         type: list
         required: true
@@ -73,7 +71,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_port_network_role:
         type: list
         required: true
@@ -449,4 +447,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml
index 6b57e26..7a2ad64 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml
@@ -56,7 +56,7 @@
       - substitutable
       properties:
         port_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_port_network:
         - get_input: port_name
@@ -129,4 +129,4 @@
         name: def
         affinity: host
       targets:
-      - BE_Affinity_group
\ No newline at end of file
+      - BE_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml
index 7711704..a6072f5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_port_network:
       type: list
       required: true
@@ -65,7 +63,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_port_network_role:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_port_ip_requirements
-          - index_value
+          get_input: port_port_ip_requirements
         network_role_tag:
           get_input:
           - port_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_port_mac_requirements
-          - index_value
+          get_input: port_port_mac_requirements
         order:
           get_input:
           - port_port_order
@@ -346,4 +340,4 @@
       - dependency
       local_storage_smp:
       - smp
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 2adc344..86039d6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -37,17 +37,13 @@
         entry_schema:
           type: json
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -63,7 +59,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd02_port_network_role:
         type: list
         required: true
@@ -91,11 +87,9 @@
         constraints:
         - greater_or_equal: 0
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -161,13 +155,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd02_port_network:
         type: list
         required: true
@@ -587,4 +579,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
index 7514666..fcaff2c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -108,10 +108,9 @@
           get_input: pd_flavor_name
         port_pd01_port_security_groups:
         - - jsa_security_group
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -126,7 +125,7 @@
         compute_pd_server_user_data_format:
         - RAW
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd02_port_security_groups:
         - - jsa_security_group
@@ -138,8 +137,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         port_pd02_port_network:
         - get_input: oam_net_name
         service_template_filter:
@@ -159,4 +157,4 @@
       members:
       - resources_with_dependOn
       - jsa_security_group
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
index 1596446..d543e55 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -35,15 +35,11 @@
       entry_schema:
         type: json
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -56,7 +52,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd02_port_network_role:
       type: list
       required: true
@@ -80,10 +76,8 @@
       constraints:
       - greater_or_equal: 0
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -138,12 +132,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd02_port_network:
       type: list
       required: true
@@ -189,17 +181,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -241,17 +227,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -483,4 +463,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index d18921c..0cac11e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -37,11 +37,9 @@
         entry_schema:
           type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -57,7 +55,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd02_port_network_role:
         type: list
         required: true
@@ -85,11 +83,9 @@
         constraints:
         - greater_or_equal: 0
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -149,7 +145,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
         type: list
         required: true
@@ -575,4 +571,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
index 1e714f2..243892f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -103,7 +103,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -118,7 +118,7 @@
         compute_pd_server_user_data_format:
         - RAW
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_network:
         - packet_mirror_network
@@ -170,4 +170,4 @@
       members:
       - packet_mirror_network
       - pd01_volume
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
index 64104dc..b8464a4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -35,10 +35,8 @@
       entry_schema:
         type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -51,7 +49,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd02_port_network_role:
       type: list
       required: true
@@ -75,10 +73,8 @@
       constraints:
       - greater_or_equal: 0
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -128,7 +124,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
       type: list
       required: true
@@ -175,17 +171,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -223,17 +215,13 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd02_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -465,4 +453,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b956d57..fd982f3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,7 +23,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_1_security_groups:
         type: list
         required: true
@@ -83,11 +81,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_1_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_subnetpoolid:
         type: list
         required: true
@@ -107,17 +103,15 @@
         entry_schema:
           type: string
       port_pd01_port_0_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_1_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -145,11 +139,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_replacement_policy:
         type: list
         required: true
@@ -587,4 +579,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
index 7c295f9..ca2f052 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -97,7 +97,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - get_input: oam_net_name
@@ -121,14 +121,12 @@
           get_input: pd_flavor_name
         vm_image_name:
           get_input: pd_image_name
-        port_pd01_port_1_network_role_tag:
-        - oam
+        port_pd01_port_1_network_role_tag: oam
         port_pd01_port_1_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
         - RAW
-        port_pd01_port_0_network_role_tag:
-        - oam
+        port_pd01_port_0_network_role_tag: oam
         port_pd01_port_1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -136,7 +134,7 @@
             floating_ip_count_required:
               is_required: false
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_1_replacement_policy:
         - AUTO
@@ -159,4 +157,4 @@
       members:
       - resources_with_dependOn
       - jsa_security_group
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
index 75533f5..01c3a9b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,7 +23,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_1_security_groups:
       type: list
       required: true
@@ -73,10 +71,8 @@
       type: string
       required: true
     port_pd01_port_1_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_subnetpoolid:
       type: list
       required: true
@@ -93,15 +89,13 @@
       entry_schema:
         type: string
     port_pd01_port_0_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_1_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -125,10 +119,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_replacement_policy:
       type: list
       required: true
@@ -189,17 +181,11 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_1_network_role_tag
-          - index_value
+          get_input: port_pd01_port_1_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -241,17 +227,11 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_0_network_role_tag
-          - index_value
+          get_input: port_pd01_port_0_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -483,4 +463,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index dc1dc15..1806971 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,7 +23,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_0_network_role:
         type: list
         required: true
@@ -111,7 +109,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -139,11 +137,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_replacement_policy:
         type: list
         required: true
@@ -575,4 +571,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
index 17966e0..40d0227 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -104,7 +104,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - packet_mirror_network
@@ -137,7 +137,7 @@
             floating_ip_count_required:
               is_required: false
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_1_replacement_policy:
         - AUTO
@@ -182,4 +182,4 @@
       - packet_mirror_network
       - pd01_volume
       - packet_internal_network
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
index 560f18e..9a7f6ae 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,7 +23,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_0_network_role:
       type: list
       required: true
@@ -96,7 +94,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -120,10 +118,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_replacement_policy:
       type: list
       required: true
@@ -175,17 +171,13 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -223,17 +215,13 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_0_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -465,4 +453,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 857c88b..4ecc127 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -29,11 +29,9 @@
         entry_schema:
           type: string
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -57,17 +55,13 @@
         entry_schema:
           type: string
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd02_port_vlan_requirements:
         type: list
         required: true
@@ -83,7 +77,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -125,13 +119,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -1147,4 +1139,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml
index 01a5711..726b8dd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml
@@ -442,14 +442,13 @@
           - pd_server_names
           - 0
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -467,8 +466,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         port_pd02_port_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -489,4 +487,4 @@
         description: heat template that creates MOG stack
       members:
       - abstract_pd_server
-      - abstract_pcm_server_0
\ No newline at end of file
+      - abstract_pcm_server_0
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml
index 6d0690a..8a9b737 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml
@@ -29,10 +29,8 @@
       entry_schema:
         type: string
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -52,15 +50,11 @@
       entry_schema:
         type: string
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd02_port_vlan_requirements:
       type: list
       required: true
@@ -73,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -108,12 +102,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -205,17 +191,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -447,4 +427,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
index a308e85..c27751b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,13 +23,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_0_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_network_role:
         type: list
         required: true
@@ -43,7 +39,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -99,11 +95,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_subnetpoolid:
         type: list
         required: true
@@ -121,11 +115,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_vlan_requirements:
         type: list
         required: true
@@ -563,4 +555,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml
index ad9cf3e..980f210 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml
@@ -425,7 +425,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - get_input: oam_net_name
@@ -435,8 +435,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_0_network_role_tag:
-        - oam
+        port_pd01_port_0_network_role_tag: oam
         port_pd01_port_1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -452,12 +451,11 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
-        port_pd01_port_1_network_role_tag:
-        - oam
+        port_pd01_port_1_network_role_tag: oam
         port_pd01_port_1_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -477,4 +475,4 @@
         heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
         description: heat template that creates MOG stack
       members:
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml
index e2edfa3..33fae62 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,12 +23,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_0_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_network_role:
       type: list
       required: true
@@ -40,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -87,10 +83,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_subnetpoolid:
       type: list
       required: true
@@ -105,10 +99,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_1_network_role_tag
-          - index_value
+          get_input: port_pd01_port_1_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -205,17 +191,11 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_0_network_role_tag
-          - index_value
+          get_input: port_pd01_port_0_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -447,4 +427,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index f642855..dc48e66 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -29,11 +29,9 @@
         entry_schema:
           type: string
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -57,17 +55,13 @@
         entry_schema:
           type: string
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd02_port_vlan_requirements:
         type: list
         required: true
@@ -83,7 +77,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -125,13 +119,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -579,4 +571,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
index 46dda5f..5fa9460 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -431,14 +431,13 @@
           - pd_server_names
           - 0
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -456,8 +455,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         port_pd02_port_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -496,4 +494,4 @@
       value:
         get_attribute:
         - abstract_pd_server
-        - pd_server_accessIPv4
\ No newline at end of file
+        - pd_server_accessIPv4
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
index bd885f9..2d94256 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -29,10 +29,8 @@
       entry_schema:
         type: string
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -52,15 +50,11 @@
       entry_schema:
         type: string
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd02_port_vlan_requirements:
       type: list
       required: true
@@ -73,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -108,12 +102,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -205,17 +191,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -472,4 +452,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml
index d53617e..0b1b45b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB_OAM_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal2_network_role_tag:
         type: list
         required: true
@@ -53,13 +51,13 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_FSB2_Internal1_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_FSB2_Internal1_network_role:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_FSB2_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal1_vlan_requirements:
         type: list
         required: true
@@ -109,11 +105,9 @@
         entry_schema:
           type: string
       port_FSB2_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_subnetpoolid:
         type: list
         required: true
@@ -121,23 +115,19 @@
         entry_schema:
           type: string
       port_FSB2_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_FSB_OAM_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_FSB2_Internal2_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -187,13 +177,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB2_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_FSB2_Internal2_order:
         type: list
         required: true
@@ -714,29 +702,25 @@
         entry_schema:
           type: json
       port_VLC_OAM_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC_GTP_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC2_Internal2_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_SCTP_A_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_flavor_name:
         type: string
         required: true
@@ -746,13 +730,13 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_SCTP_A_fixed_ips:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC2_Internal1_network_role_tag:
         type: list
         required: true
@@ -760,11 +744,9 @@
         entry_schema:
           type: string
       port_VLC2_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC_GTP_network_role_tag:
         type: list
         required: true
@@ -776,23 +758,17 @@
         required: true
         status: SUPPORTED
       port_VLC2_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC2_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC2_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC_SCTP_B_network:
         type: list
         required: true
@@ -810,7 +786,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_GTP_order:
         type: list
         required: true
@@ -840,7 +816,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC_OAM_network:
         type: list
         required: true
@@ -894,13 +870,13 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_OAM_fixed_ips:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC2_Internal1_order:
         type: list
         required: true
@@ -918,7 +894,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC2_Internal2_vlan_requirements:
         type: list
         required: true
@@ -992,7 +968,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC_GTP_network_role:
         type: list
         required: true
@@ -1012,11 +988,9 @@
         entry_schema:
           type: integer
       port_VLC_GTP_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC2_Internal1_network:
         type: list
         required: true
@@ -1036,11 +1010,9 @@
         entry_schema:
           type: json
       port_VLC_OAM_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC2_Internal1_vlan_requirements:
         type: list
         required: true
@@ -1054,11 +1026,9 @@
         entry_schema:
           type: string
       port_VLC_SCTP_B_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC2_Internal2_exCP_naming:
         type: list
         required: true
@@ -1853,11 +1823,9 @@
         entry_schema:
           type: string
       port_NCB1_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -1873,7 +1841,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_NCB1_Internal1_exCP_naming:
         type: list
         required: true
@@ -1899,11 +1867,9 @@
         entry_schema:
           type: string
       port_NCB1_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -1913,11 +1879,9 @@
         constraints:
         - greater_or_equal: 0
       port_NCB1_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_NCB1_Internal1_order:
         type: list
         required: true
@@ -1935,7 +1899,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_NCB1_Internal1_vlan_requirements:
         type: list
         required: true
@@ -1943,11 +1907,9 @@
         entry_schema:
           type: json
       port_NCB1_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_NCB1_Internal1_network:
         type: list
         required: true
@@ -2400,17 +2362,13 @@
         required: true
         status: SUPPORTED
       port_NCB2_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_NCB2_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -2464,7 +2422,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_NCB2_Internal2_network_role_tag:
         type: list
         required: true
@@ -2484,17 +2442,13 @@
         entry_schema:
           type: json
       port_NCB2_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_NCB2_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_NCB2_Internal1_subnetpoolid:
         type: list
         required: true
@@ -2536,7 +2490,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
     requirements:
     - dependency_NCB2:
         capability: tosca.capabilities.Node
@@ -2987,7 +2941,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       vm_image_name:
         type: string
         required: true
@@ -3023,23 +2977,19 @@
         entry_schema:
           type: string
       port_GPB2_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_GPB2_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_GPB2_Internal1_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_GPB2_Internal2_network_role:
         type: list
         required: true
@@ -3073,11 +3023,9 @@
         entry_schema:
           type: integer
       port_GPB2_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_GPB2_Internal1_exCP_naming:
         type: list
         required: true
@@ -3091,11 +3039,9 @@
         entry_schema:
           type: string
       port_GPB2_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_GPB2_Internal2_network:
         type: list
         required: true
@@ -3520,11 +3466,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_VLC1_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC_GTP_exCP_naming:
         type: list
         required: true
@@ -3532,23 +3476,19 @@
         entry_schema:
           type: json
       port_VLC_OAM_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC1_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_VLC_GTP_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC1_Internal2_exCP_naming:
         type: list
         required: true
@@ -3562,11 +3502,9 @@
         entry_schema:
           type: string
       port_VLC_SCTP_A_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_flavor_name:
         type: string
         required: true
@@ -3582,13 +3520,13 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_SCTP_A_fixed_ips:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC1_Internal2_network_role_tag:
         type: list
         required: true
@@ -3642,11 +3580,9 @@
         entry_schema:
           type: json
       port_VLC1_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC1_Internal1_vlan_requirements:
         type: list
         required: true
@@ -3676,7 +3612,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC_OAM_network:
         type: list
         required: true
@@ -3694,7 +3630,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC1_Internal1_network:
         type: list
         required: true
@@ -3748,19 +3684,19 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC1_Internal1_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_OAM_fixed_ips:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC1_Internal2_vlan_requirements:
         type: list
         required: true
@@ -3790,7 +3726,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_VLC_SCTP_A_subnetpoolid:
         type: list
         required: true
@@ -3830,11 +3766,9 @@
         constraints:
         - greater_or_equal: 0
       port_VLC1_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC_SCTP_B_subnetpoolid:
         type: list
         required: true
@@ -3846,7 +3780,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_VLC_GTP_network_role:
         type: list
         required: true
@@ -3860,17 +3794,13 @@
         entry_schema:
           type: string
       port_VLC_GTP_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC_OAM_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC1_Internal1_exCP_naming:
         type: list
         required: true
@@ -3878,11 +3808,9 @@
         entry_schema:
           type: json
       port_VLC_SCTP_B_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_VLC_SCTP_B_order:
         type: list
         required: true
@@ -4637,17 +4565,13 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB1_Internal2_network:
         type: list
         required: true
@@ -4671,17 +4595,15 @@
         entry_schema:
           type: json
       port_FSB1_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_FSB1_Internal1_subnetpoolid:
         type: list
         required: true
@@ -4695,11 +4617,9 @@
         entry_schema:
           type: string
       port_FSB1_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_FSB_OAM_network_role:
         type: list
         required: true
@@ -4711,7 +4631,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_FSB1_Internal1_order:
         type: list
         required: true
@@ -4743,11 +4663,9 @@
         entry_schema:
           type: string
       port_FSB_OAM_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_FSB1_availability_zone:
         type: list
         required: true
@@ -4787,17 +4705,15 @@
         entry_schema:
           type: string
       port_FSB1_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_FSB1_Internal2_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_FSB1_Internal2_order:
         type: list
         required: true
@@ -4809,7 +4725,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB1_Internal1_exCP_naming:
         type: list
         required: true
@@ -5358,11 +5274,9 @@
         required: true
         status: SUPPORTED
       port_GPB1_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_GPB1_Internal1_order:
         type: list
         required: true
@@ -5386,11 +5300,9 @@
         entry_schema:
           type: json
       port_GPB1_Internal1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_GPB1_availability_zone:
         type: list
         required: true
@@ -5408,7 +5320,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_GPB1_Internal2_vlan_requirements:
         type: list
         required: true
@@ -5442,17 +5354,13 @@
         entry_schema:
           type: string
       port_GPB1_Internal2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_GPB1_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_GPB1_Internal1_subnetpoolid:
         type: list
         required: true
@@ -5476,7 +5384,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_GPB1_Internal2_order:
         type: list
         required: true
@@ -5896,4 +5804,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml
index 8ae59dc..25470e4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml
@@ -627,8 +627,7 @@
       directives:
       - substitutable
       properties:
-        port_VLC_OAM_network_role_tag:
-        - oam
+        port_VLC_OAM_network_role_tag: oam
         port_VLC_GTP_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -642,7 +641,7 @@
             floating_ip_count_required:
               is_required: false
         port_VLC_SCTP_A_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: vlc-flavor
@@ -656,16 +655,16 @@
         - - ip_address:
               get_input: vlc2-sctp-a-ip
         port_VLC2_Internal2_mac_address:
-        - get_input: vlc2-Internal2-mac
+          get_input: vlc2-Internal1-mac
         vm_image_name:
           get_input: pxe-image
         port_VLC2_Internal1_mac_address:
-        - get_input: vlc2-Internal1-mac
+          get_input: vlc2-Internal1-mac
         port_VLC2_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_VLC2_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_VLC_SCTP_B_network:
         - epc-sctp-b-net
@@ -707,17 +706,17 @@
         - - ip_address:
               get_input: vlc2-sctp-b-ip
         port_VLC_GTP_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_VLC2_Internal1_network:
         - Internal1-net
         compute_VLC2_availability_zone:
         - get_input: vlc_zone
         port_VLC_OAM_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_VLC_SCTP_B_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_VLC2ServiceTemplate.yaml
@@ -754,11 +753,10 @@
       - substitutable
       properties:
         port_VLC1_Internal2_mac_address:
-        - get_input: vlc1-Internal2-mac
-        port_VLC_OAM_network_role_tag:
-        - oam
+          get_input: vlc1-Internal1-mac
+        port_VLC_OAM_network_role_tag: oam
         port_VLC1_Internal1_mac_address:
-        - get_input: vlc1-Internal1-mac
+          get_input: vlc1-Internal1-mac
         port_VLC_GTP_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -766,7 +764,7 @@
             floating_ip_count_required:
               is_required: false
         port_VLC_SCTP_A_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: vlc-flavor
@@ -788,7 +786,7 @@
         port_VLC_GTP_network:
         - epc-gtp-net
         port_VLC1_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_VLC_GTP_fixed_ips:
         - - ip_address:
@@ -831,19 +829,19 @@
         compute_VLC1_availability_zone:
         - get_input: vlc_zone
         port_VLC1_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_VLC_SCTP_B_fixed_ips:
         - - ip_address:
               get_input: vlc1-sctp-b-ip
         port_VLC_GTP_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_VLC_OAM_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_VLC_SCTP_B_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         service_template_filter:
           substitute_service_template: Nested_VLC1ServiceTemplate.yaml
@@ -905,11 +903,11 @@
         vm_flavor_name:
           get_input: gpb-flavor
         port_GPB1_Internal2_mac_address:
-        - get_input: gpb1-Internal2-mac
+          get_input: gpb1-Internal1-mac
         vm_image_name:
           get_input: pxe-image
         port_GPB1_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         compute_GPB1_availability_zone:
         - get_input: gpb_zone
@@ -924,10 +922,10 @@
         port_GPB1_Internal1_network:
         - Internal1-net
         port_GPB1_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_GPB1_Internal1_mac_address:
-        - get_input: gpb1-Internal1-mac
+          get_input: gpb1-Internal1-mac
         port_GPB1_Internal1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -971,9 +969,9 @@
         compute_GPB2_name:
         - get_input: gpb2-name
         port_GPB2_Internal2_mac_address:
-        - get_input: gpb2-Internal2-mac
+          get_input: gpb2-Internal1-mac
         port_GPB2_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_GPB2_Internal1_ip_requirements:
         - - ip_version: 4
@@ -984,10 +982,10 @@
         compute_GPB2_availability_zone:
         - get_input: gpb_zone
         port_GPB2_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_GPB2_Internal1_mac_address:
-        - get_input: gpb2-Internal1-mac
+          get_input: gpb2-Internal1-mac
         port_GPB2_Internal2_network:
         - Internal2-net
         service_template_filter:
@@ -1056,7 +1054,7 @@
         compute_NCB1_name:
         - get_input: ncb1-name
         port_NCB1_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         vm_image_name:
           get_input: pxe-image
@@ -1067,9 +1065,9 @@
             floating_ip_count_required:
               is_required: false
         port_NCB1_Internal2_mac_address:
-        - get_input: ncb1-Internal2-mac
+          get_input: ncb1-Internal1-mac
         port_NCB1_Internal1_mac_address:
-        - get_input: ncb1-Internal1-mac
+          get_input: ncb1-Internal1-mac
         port_NCB1_Internal1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -1077,7 +1075,7 @@
             floating_ip_count_required:
               is_required: false
         port_NCB1_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_NCB1_Internal1_network:
         - Internal1-net
@@ -1112,10 +1110,10 @@
         vm_flavor_name:
           get_input: ncb-flavor
         port_NCB2_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_NCB2_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         vm_image_name:
           get_input: pxe-image
@@ -1130,9 +1128,9 @@
         port_NCB2_Internal2_network:
         - Internal2-net
         port_NCB2_Internal1_mac_address:
-        - get_input: ncb2-Internal1-mac
+          get_input: ncb2-Internal1-mac
         port_NCB2_Internal2_mac_address:
-        - get_input: ncb2-Internal2-mac
+          get_input: ncb2-Internal1-mac
         compute_NCB2_name:
         - get_input: ncb2-name
         port_NCB2_Internal1_ip_requirements:
@@ -1182,9 +1180,8 @@
       - substitutable
       properties:
         port_FSB1_Internal1_mac_address:
-        - get_input: fsb1-Internal1-mac
-        port_FSB_OAM_network_role_tag:
-        - oam
+          get_input: fsb1-Internal1-mac
+        port_FSB_OAM_network_role_tag: oam
         port_FSB1_Internal2_network:
         - Internal2-net
         port_FSB1_Internal1_network:
@@ -1192,7 +1189,7 @@
         vm_flavor_name:
           get_input: fsb1-flavor
         port_FSB1_Internal2_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         port_FSB_OAM_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -1200,7 +1197,7 @@
             floating_ip_count_required:
               is_required: false
         port_FSB1_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_FSB1_Internal1_ip_requirements:
         - - ip_version: 4
@@ -1211,12 +1208,12 @@
         port_FSB_OAM_network:
         - get_input: oam_net_id
         port_FSB_OAM_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_FSB1_availability_zone:
         - get_input: fsb_zone
         port_FSB1_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_FSB1_Internal2_ip_requirements:
         - - ip_version: 4
@@ -1251,8 +1248,7 @@
       directives:
       - substitutable
       properties:
-        port_FSB_OAM_network_role_tag:
-        - oam
+        port_FSB_OAM_network_role_tag: oam
         vm_flavor_name:
           get_input: fsb2-flavor
         compute_FSB2_availability_zone:
@@ -1272,18 +1268,18 @@
         compute_FSB2_name:
         - get_input: fsb2-name
         port_FSB2_Internal1_mac_address:
-        - get_input: fsb2-Internal1-mac
+          get_input: fsb2-Internal1-mac
         port_FSB_OAM_network:
         - get_input: oam_net_id
         port_FSB2_Internal1_network:
         - Internal1-net
         port_FSB2_Internal2_mac_address:
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         port_FSB_OAM_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_FSB2_Internal2_ip_requirements:
         - - ip_version: 4
@@ -1297,7 +1293,7 @@
         - - ip_address:
               get_input: fsb2-oam-ip
         port_FSB2_Internal1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: true
         service_template_filter:
           substitute_service_template: Nested_FSB2ServiceTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml
index 42ba1a6..a9acfcc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml
@@ -12,15 +12,11 @@
 topology_template:
   inputs:
     port_FSB1_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB1_Internal2_network:
       type: list
       required: true
@@ -40,15 +36,13 @@
       entry_schema:
         type: json
     port_FSB1_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_FSB1_Internal1_subnetpoolid:
       type: list
       required: true
@@ -60,10 +54,8 @@
       entry_schema:
         type: string
     port_FSB1_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_FSB_OAM_network_role:
       type: list
       required: true
@@ -73,7 +65,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_FSB1_Internal1_order:
       type: list
       required: true
@@ -100,10 +92,8 @@
       entry_schema:
         type: string
     port_FSB_OAM_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_FSB1_availability_zone:
       type: list
       required: true
@@ -137,15 +127,13 @@
       entry_schema:
         type: string
     port_FSB1_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_FSB1_Internal2_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_FSB1_Internal2_order:
       type: list
       required: true
@@ -155,7 +143,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB1_Internal1_exCP_naming:
       type: list
       required: true
@@ -194,17 +182,13 @@
           - port_FSB1_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB1_Internal2_ip_requirements
-          - index_value
+          get_input: port_FSB1_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_FSB1_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_FSB1_Internal2_mac_requirements
-          - index_value
+          get_input: port_FSB1_Internal2_mac_requirements
         order:
           get_input:
           - port_FSB1_Internal2_order
@@ -222,9 +206,7 @@
           - port_FSB1_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal2_mac_address
-          - index_value
+          get_input: port_FSB1_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -242,17 +224,13 @@
           - port_FSB1_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB1_Internal1_ip_requirements
-          - index_value
+          get_input: port_FSB1_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_FSB1_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_FSB1_Internal1_mac_requirements
-          - index_value
+          get_input: port_FSB1_Internal1_mac_requirements
         order:
           get_input:
           - port_FSB1_Internal1_order
@@ -270,9 +248,7 @@
           - port_FSB1_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal1_mac_address
-          - index_value
+          get_input: port_FSB1_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -290,17 +266,11 @@
           - port_FSB_OAM_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB_OAM_ip_requirements
-          - index_value
+          get_input: port_FSB_OAM_ip_requirements
         network_role_tag:
-          get_input:
-          - port_FSB_OAM_network_role_tag
-          - index_value
+          get_input: port_FSB_OAM_network_role_tag
         mac_requirements:
-          get_input:
-          - port_FSB_OAM_mac_requirements
-          - index_value
+          get_input: port_FSB_OAM_mac_requirements
         order:
           get_input:
           - port_FSB_OAM_order
@@ -314,9 +284,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -588,4 +556,4 @@
       - dependency
       link_FSB1_FSB_OAM:
       - FSB1_FSB_OAM
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml
index a71818c..24b75d7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB_OAM_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal2_network_role_tag:
       type: list
       required: true
@@ -48,12 +46,12 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_FSB2_Internal1_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_FSB2_Internal1_network_role:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_FSB2_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal1_vlan_requirements:
       type: list
       required: true
@@ -95,30 +91,24 @@
       entry_schema:
         type: string
     port_FSB2_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_subnetpoolid:
       type: list
       required: true
       entry_schema:
         type: string
     port_FSB2_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_FSB_OAM_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_FSB2_Internal2_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -160,12 +150,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB2_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_FSB2_Internal2_order:
       type: list
       required: true
@@ -194,17 +182,11 @@
           - port_FSB_OAM_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB_OAM_ip_requirements
-          - index_value
+          get_input: port_FSB_OAM_ip_requirements
         network_role_tag:
-          get_input:
-          - port_FSB_OAM_network_role_tag
-          - index_value
+          get_input: port_FSB_OAM_network_role_tag
         mac_requirements:
-          get_input:
-          - port_FSB_OAM_mac_requirements
-          - index_value
+          get_input: port_FSB_OAM_mac_requirements
         order:
           get_input:
           - port_FSB_OAM_order
@@ -218,9 +200,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -255,17 +235,13 @@
           - port_FSB2_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB2_Internal2_ip_requirements
-          - index_value
+          get_input: port_FSB2_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_FSB2_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_FSB2_Internal2_mac_requirements
-          - index_value
+          get_input: port_FSB2_Internal2_mac_requirements
         order:
           get_input:
           - port_FSB2_Internal2_order
@@ -283,9 +259,7 @@
           - port_FSB2_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal2_mac_address
-          - index_value
+          get_input: port_FSB2_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -303,17 +277,13 @@
           - port_FSB2_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_FSB2_Internal1_ip_requirements
-          - index_value
+          get_input: port_FSB2_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_FSB2_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_FSB2_Internal1_mac_requirements
-          - index_value
+          get_input: port_FSB2_Internal1_mac_requirements
         order:
           get_input:
           - port_FSB2_Internal1_order
@@ -331,9 +301,7 @@
           - port_FSB2_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal1_mac_address
-          - index_value
+          get_input: port_FSB2_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -588,4 +556,4 @@
       - local_storage
       link_FSB2_FSB2_Internal2:
       - FSB2_FSB2_Internal2
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml
index 0406633..6b23277 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml
@@ -30,10 +30,8 @@
       type: string
       required: true
     port_GPB1_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_GPB1_Internal1_order:
       type: list
       required: true
@@ -53,10 +51,8 @@
       entry_schema:
         type: json
     port_GPB1_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_GPB1_availability_zone:
       type: list
       required: true
@@ -71,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_GPB1_Internal2_vlan_requirements:
       type: list
       required: true
@@ -100,15 +96,11 @@
       entry_schema:
         type: string
     port_GPB1_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_GPB1_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_GPB1_Internal1_subnetpoolid:
       type: list
       required: true
@@ -128,7 +120,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_GPB1_Internal2_order:
       type: list
       required: true
@@ -162,17 +154,13 @@
           - port_GPB1_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_GPB1_Internal1_ip_requirements
-          - index_value
+          get_input: port_GPB1_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_GPB1_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_GPB1_Internal1_mac_requirements
-          - index_value
+          get_input: port_GPB1_Internal1_mac_requirements
         order:
           get_input:
           - port_GPB1_Internal1_order
@@ -190,9 +178,7 @@
           - port_GPB1_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_GPB1_Internal1_mac_address
-          - index_value
+          get_input: port_GPB1_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -210,17 +196,13 @@
           - port_GPB1_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_GPB1_Internal2_ip_requirements
-          - index_value
+          get_input: port_GPB1_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_GPB1_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_GPB1_Internal2_mac_requirements
-          - index_value
+          get_input: port_GPB1_Internal2_mac_requirements
         order:
           get_input:
           - port_GPB1_Internal2_order
@@ -238,9 +220,7 @@
           - port_GPB1_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_GPB1_Internal2_mac_address
-          - index_value
+          get_input: port_GPB1_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -456,4 +436,4 @@
       - local_storage
       link_GPB1_GPB1_Internal1:
       - GPB1_GPB1_Internal1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml
index 64a239a..133d43e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml
@@ -38,7 +38,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     vm_image_name:
       type: string
       required: true
@@ -68,20 +68,16 @@
       entry_schema:
         type: string
     port_GPB2_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_GPB2_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_GPB2_Internal1_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_GPB2_Internal2_network_role:
       type: list
       required: true
@@ -110,10 +106,8 @@
       entry_schema:
         type: integer
     port_GPB2_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_GPB2_Internal1_exCP_naming:
       type: list
       required: true
@@ -125,10 +119,8 @@
       entry_schema:
         type: string
     port_GPB2_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_GPB2_Internal2_network:
       type: list
       required: true
@@ -147,17 +139,13 @@
           - port_GPB2_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_GPB2_Internal2_ip_requirements
-          - index_value
+          get_input: port_GPB2_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_GPB2_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_GPB2_Internal2_mac_requirements
-          - index_value
+          get_input: port_GPB2_Internal2_mac_requirements
         order:
           get_input:
           - port_GPB2_Internal2_order
@@ -175,9 +163,7 @@
           - port_GPB2_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_GPB2_Internal2_mac_address
-          - index_value
+          get_input: port_GPB2_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -195,17 +181,13 @@
           - port_GPB2_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_GPB2_Internal1_ip_requirements
-          - index_value
+          get_input: port_GPB2_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_GPB2_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_GPB2_Internal1_mac_requirements
-          - index_value
+          get_input: port_GPB2_Internal1_mac_requirements
         order:
           get_input:
           - port_GPB2_Internal1_order
@@ -223,9 +205,7 @@
           - port_GPB2_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_GPB2_Internal1_mac_address
-          - index_value
+          get_input: port_GPB2_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -456,4 +436,4 @@
       - dependency
       dependency_GPB2_GPB2_Internal1:
       - GPB2_GPB2_Internal1
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml
index c41603b..2da2afc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml
@@ -35,10 +35,8 @@
       entry_schema:
         type: string
     port_NCB1_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -51,7 +49,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_NCB1_Internal1_exCP_naming:
       type: list
       required: true
@@ -73,10 +71,8 @@
       entry_schema:
         type: string
     port_NCB1_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -85,10 +81,8 @@
       constraints:
       - greater_or_equal: 0
     port_NCB1_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_NCB1_Internal1_order:
       type: list
       required: true
@@ -103,17 +97,15 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_NCB1_Internal1_vlan_requirements:
       type: list
       required: true
       entry_schema:
         type: json
     port_NCB1_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_NCB1_Internal1_network:
       type: list
       required: true
@@ -162,17 +154,13 @@
           - port_NCB1_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_NCB1_Internal1_ip_requirements
-          - index_value
+          get_input: port_NCB1_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_NCB1_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_NCB1_Internal1_mac_requirements
-          - index_value
+          get_input: port_NCB1_Internal1_mac_requirements
         order:
           get_input:
           - port_NCB1_Internal1_order
@@ -190,9 +178,7 @@
           - port_NCB1_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_NCB1_Internal1_mac_address
-          - index_value
+          get_input: port_NCB1_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -210,17 +196,13 @@
           - port_NCB1_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_NCB1_Internal2_ip_requirements
-          - index_value
+          get_input: port_NCB1_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_NCB1_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_NCB1_Internal2_mac_requirements
-          - index_value
+          get_input: port_NCB1_Internal2_mac_requirements
         order:
           get_input:
           - port_NCB1_Internal2_order
@@ -238,9 +220,7 @@
           - port_NCB1_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_NCB1_Internal2_mac_address
-          - index_value
+          get_input: port_NCB1_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -456,4 +436,4 @@
       - dependency
       dependency_NCB1_NCB1_Internal2:
       - NCB1_NCB1_Internal2
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml
index 3ff3a61..bdc1369 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml
@@ -20,15 +20,11 @@
       type: string
       required: true
     port_NCB2_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_NCB2_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -73,7 +69,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_NCB2_Internal2_network_role_tag:
       type: list
       required: true
@@ -90,15 +86,11 @@
       entry_schema:
         type: json
     port_NCB2_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_NCB2_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_NCB2_Internal1_subnetpoolid:
       type: list
       required: true
@@ -133,7 +125,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
   node_templates:
     NCB2:
       type: org.openecomp.resource.vfc.nodes.heat.NCB2
@@ -162,17 +154,13 @@
           - port_NCB2_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_NCB2_Internal1_ip_requirements
-          - index_value
+          get_input: port_NCB2_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_NCB2_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_NCB2_Internal1_mac_requirements
-          - index_value
+          get_input: port_NCB2_Internal1_mac_requirements
         order:
           get_input:
           - port_NCB2_Internal1_order
@@ -190,9 +178,7 @@
           - port_NCB2_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_NCB2_Internal1_mac_address
-          - index_value
+          get_input: port_NCB2_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -210,17 +196,13 @@
           - port_NCB2_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_NCB2_Internal2_ip_requirements
-          - index_value
+          get_input: port_NCB2_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_NCB2_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_NCB2_Internal2_mac_requirements
-          - index_value
+          get_input: port_NCB2_Internal2_mac_requirements
         order:
           get_input:
           - port_NCB2_Internal2_order
@@ -238,9 +220,7 @@
           - port_NCB2_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_NCB2_Internal2_mac_address
-          - index_value
+          get_input: port_NCB2_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -456,4 +436,4 @@
       - link
       dependency_NCB2:
       - NCB2
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml
index d1f52d6..9f5a49c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml
@@ -12,30 +12,24 @@
 topology_template:
   inputs:
     port_VLC1_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC_GTP_exCP_naming:
       type: list
       required: true
       entry_schema:
         type: json
     port_VLC_OAM_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC1_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC_GTP_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC1_Internal2_exCP_naming:
       type: list
       required: true
@@ -47,10 +41,8 @@
       entry_schema:
         type: string
     port_VLC_SCTP_A_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_flavor_name:
       type: string
       required: true
@@ -63,12 +55,12 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_SCTP_A_fixed_ips:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC1_Internal2_network_role_tag:
       type: list
       required: true
@@ -113,10 +105,8 @@
       entry_schema:
         type: json
     port_VLC1_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC1_Internal1_vlan_requirements:
       type: list
       required: true
@@ -141,7 +131,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC_OAM_network:
       type: list
       required: true
@@ -156,7 +146,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC1_Internal1_network:
       type: list
       required: true
@@ -201,17 +191,17 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC1_Internal1_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_OAM_fixed_ips:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC1_Internal2_vlan_requirements:
       type: list
       required: true
@@ -236,7 +226,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_SCTP_A_subnetpoolid:
       type: list
       required: true
@@ -270,10 +260,8 @@
       constraints:
       - greater_or_equal: 0
     port_VLC1_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC_SCTP_B_subnetpoolid:
       type: list
       required: true
@@ -283,7 +271,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC_GTP_network_role:
       type: list
       required: true
@@ -295,25 +283,19 @@
       entry_schema:
         type: string
     port_VLC_GTP_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC_OAM_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC1_Internal1_exCP_naming:
       type: list
       required: true
       entry_schema:
         type: json
     port_VLC_SCTP_B_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC_SCTP_B_order:
       type: list
       required: true
@@ -347,17 +329,13 @@
           - port_VLC_SCTP_B_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_SCTP_B_ip_requirements
-          - index_value
+          get_input: port_VLC_SCTP_B_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_SCTP_B_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_SCTP_B_mac_requirements
-          - index_value
+          get_input: port_VLC_SCTP_B_mac_requirements
         order:
           get_input:
           - port_VLC_SCTP_B_order
@@ -371,9 +349,7 @@
           - port_VLC_SCTP_B_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_SCTP_B_fixed_ips
-          - index_value
+          get_input: port_VLC_SCTP_B_fixed_ips
         network:
           get_input:
           - port_VLC_SCTP_B_network
@@ -395,17 +371,13 @@
           - port_VLC1_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC1_Internal2_ip_requirements
-          - index_value
+          get_input: port_VLC1_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC1_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC1_Internal2_mac_requirements
-          - index_value
+          get_input: port_VLC1_Internal2_mac_requirements
         order:
           get_input:
           - port_VLC1_Internal2_order
@@ -423,9 +395,7 @@
           - port_VLC1_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_VLC1_Internal2_mac_address
-          - index_value
+          get_input: port_VLC1_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -443,17 +413,13 @@
           - port_VLC1_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC1_Internal1_ip_requirements
-          - index_value
+          get_input: port_VLC1_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC1_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC1_Internal1_mac_requirements
-          - index_value
+          get_input: port_VLC1_Internal1_mac_requirements
         order:
           get_input:
           - port_VLC1_Internal1_order
@@ -471,9 +437,7 @@
           - port_VLC1_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_VLC1_Internal1_mac_address
-          - index_value
+          get_input: port_VLC1_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -491,17 +455,11 @@
           - port_VLC_OAM_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_OAM_ip_requirements
-          - index_value
+          get_input: port_VLC_OAM_ip_requirements
         network_role_tag:
-          get_input:
-          - port_VLC_OAM_network_role_tag
-          - index_value
+          get_input: port_VLC_OAM_network_role_tag
         mac_requirements:
-          get_input:
-          - port_VLC_OAM_mac_requirements
-          - index_value
+          get_input: port_VLC_OAM_mac_requirements
         order:
           get_input:
           - port_VLC_OAM_order
@@ -515,9 +473,7 @@
           - port_VLC_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_OAM_fixed_ips
-          - index_value
+          get_input: port_VLC_OAM_fixed_ips
         network:
           get_input:
           - port_VLC_OAM_network
@@ -539,17 +495,13 @@
           - port_VLC_SCTP_A_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_SCTP_A_ip_requirements
-          - index_value
+          get_input: port_VLC_SCTP_A_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_SCTP_A_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_SCTP_A_mac_requirements
-          - index_value
+          get_input: port_VLC_SCTP_A_mac_requirements
         order:
           get_input:
           - port_VLC_SCTP_A_order
@@ -563,9 +515,7 @@
           - port_VLC_SCTP_A_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_SCTP_A_fixed_ips
-          - index_value
+          get_input: port_VLC_SCTP_A_fixed_ips
         network:
           get_input:
           - port_VLC_SCTP_A_network
@@ -602,17 +552,13 @@
           - port_VLC_GTP_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_GTP_ip_requirements
-          - index_value
+          get_input: port_VLC_GTP_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_GTP_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_GTP_mac_requirements
-          - index_value
+          get_input: port_VLC_GTP_mac_requirements
         order:
           get_input:
           - port_VLC_GTP_order
@@ -626,9 +572,7 @@
           - port_VLC_GTP_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_GTP_fixed_ips
-          - index_value
+          get_input: port_VLC_GTP_fixed_ips
         network:
           get_input:
           - port_VLC_GTP_network
@@ -1004,4 +948,4 @@
       - dependency
       dependency_VLC1_VLC_SCTP_A:
       - VLC1_VLC_SCTP_A
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml
index 75b8246..0254ce3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml
@@ -17,25 +17,21 @@
       entry_schema:
         type: json
     port_VLC_OAM_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC_GTP_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC2_Internal2_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_SCTP_A_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_flavor_name:
       type: string
       required: true
@@ -43,22 +39,20 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_SCTP_A_fixed_ips:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC2_Internal1_network_role_tag:
       type: list
       required: true
       entry_schema:
         type: string
     port_VLC2_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC_GTP_network_role_tag:
       type: list
       required: true
@@ -68,20 +62,14 @@
       type: string
       required: true
     port_VLC2_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_VLC2_Internal2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC2_Internal1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC_SCTP_B_network:
       type: list
       required: true
@@ -96,7 +84,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_GTP_order:
       type: list
       required: true
@@ -121,7 +109,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC_OAM_network:
       type: list
       required: true
@@ -166,12 +154,12 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC_OAM_fixed_ips:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC2_Internal1_order:
       type: list
       required: true
@@ -186,7 +174,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_VLC2_Internal2_vlan_requirements:
       type: list
       required: true
@@ -248,7 +236,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_VLC_GTP_network_role:
       type: list
       required: true
@@ -265,10 +253,8 @@
       entry_schema:
         type: integer
     port_VLC_GTP_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC2_Internal1_network:
       type: list
       required: true
@@ -285,10 +271,8 @@
       entry_schema:
         type: json
     port_VLC_OAM_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC2_Internal1_vlan_requirements:
       type: list
       required: true
@@ -300,10 +284,8 @@
       entry_schema:
         type: string
     port_VLC_SCTP_B_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_VLC2_Internal2_exCP_naming:
       type: list
       required: true
@@ -347,17 +329,13 @@
           - port_VLC2_Internal2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC2_Internal2_ip_requirements
-          - index_value
+          get_input: port_VLC2_Internal2_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC2_Internal2_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC2_Internal2_mac_requirements
-          - index_value
+          get_input: port_VLC2_Internal2_mac_requirements
         order:
           get_input:
           - port_VLC2_Internal2_order
@@ -375,9 +353,7 @@
           - port_VLC2_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_VLC2_Internal2_mac_address
-          - index_value
+          get_input: port_VLC2_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -395,17 +371,11 @@
           - port_VLC_OAM_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_OAM_ip_requirements
-          - index_value
+          get_input: port_VLC_OAM_ip_requirements
         network_role_tag:
-          get_input:
-          - port_VLC_OAM_network_role_tag
-          - index_value
+          get_input: port_VLC_OAM_network_role_tag
         mac_requirements:
-          get_input:
-          - port_VLC_OAM_mac_requirements
-          - index_value
+          get_input: port_VLC_OAM_mac_requirements
         order:
           get_input:
           - port_VLC_OAM_order
@@ -419,9 +389,7 @@
           - port_VLC_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_OAM_fixed_ips
-          - index_value
+          get_input: port_VLC_OAM_fixed_ips
         network:
           get_input:
           - port_VLC_OAM_network
@@ -443,17 +411,13 @@
           - port_VLC2_Internal1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC2_Internal1_ip_requirements
-          - index_value
+          get_input: port_VLC2_Internal1_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC2_Internal1_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC2_Internal1_mac_requirements
-          - index_value
+          get_input: port_VLC2_Internal1_mac_requirements
         order:
           get_input:
           - port_VLC2_Internal1_order
@@ -471,9 +435,7 @@
           - port_VLC2_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_VLC2_Internal1_mac_address
-          - index_value
+          get_input: port_VLC2_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -491,17 +453,13 @@
           - port_VLC_SCTP_A_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_SCTP_A_ip_requirements
-          - index_value
+          get_input: port_VLC_SCTP_A_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_SCTP_A_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_SCTP_A_mac_requirements
-          - index_value
+          get_input: port_VLC_SCTP_A_mac_requirements
         order:
           get_input:
           - port_VLC_SCTP_A_order
@@ -515,9 +473,7 @@
           - port_VLC_SCTP_A_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_SCTP_A_fixed_ips
-          - index_value
+          get_input: port_VLC_SCTP_A_fixed_ips
         network:
           get_input:
           - port_VLC_SCTP_A_network
@@ -539,17 +495,13 @@
           - port_VLC_SCTP_B_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_SCTP_B_ip_requirements
-          - index_value
+          get_input: port_VLC_SCTP_B_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_SCTP_B_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_SCTP_B_mac_requirements
-          - index_value
+          get_input: port_VLC_SCTP_B_mac_requirements
         order:
           get_input:
           - port_VLC_SCTP_B_order
@@ -563,9 +515,7 @@
           - port_VLC_SCTP_B_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_SCTP_B_fixed_ips
-          - index_value
+          get_input: port_VLC_SCTP_B_fixed_ips
         network:
           get_input:
           - port_VLC_SCTP_B_network
@@ -587,17 +537,13 @@
           - port_VLC_GTP_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_VLC_GTP_ip_requirements
-          - index_value
+          get_input: port_VLC_GTP_ip_requirements
         network_role_tag:
           get_input:
           - port_VLC_GTP_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_VLC_GTP_mac_requirements
-          - index_value
+          get_input: port_VLC_GTP_mac_requirements
         order:
           get_input:
           - port_VLC_GTP_order
@@ -611,9 +557,7 @@
           - port_VLC_GTP_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_VLC_GTP_fixed_ips
-          - index_value
+          get_input: port_VLC_GTP_fixed_ips
         network:
           get_input:
           - port_VLC_GTP_network
@@ -1004,4 +948,4 @@
       - dependency
       dependency_VLC2_VLC_GTP:
       - VLC2_VLC_GTP
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b9579e6..297b162 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -29,11 +29,9 @@
         entry_schema:
           type: string
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -57,17 +55,13 @@
         entry_schema:
           type: string
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd02_port_vlan_requirements:
         type: list
         required: true
@@ -83,7 +77,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -125,13 +119,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -574,4 +566,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml
index 02d93a5..796c339 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml
@@ -431,14 +431,13 @@
           - pd_server_names
           - 0
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_input: pd_flavor_name
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -456,8 +455,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         port_pd02_port_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -493,4 +491,4 @@
       members:
       - network_policy_port
       - network_policy_server
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml
index 3dce505..084a479 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -29,10 +29,8 @@
       entry_schema:
         type: string
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -52,15 +50,11 @@
       entry_schema:
         type: string
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd02_port_vlan_requirements:
       type: list
       required: true
@@ -73,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -108,12 +102,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -205,17 +191,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -464,4 +444,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b003fc2..e4d6d6d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -29,11 +29,9 @@
         entry_schema:
           type: string
       port_pd02_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_exCP_naming:
         type: list
         required: true
@@ -57,17 +55,13 @@
         entry_schema:
           type: string
       port_pd02_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd02_port_vlan_requirements:
         type: list
         required: true
@@ -83,7 +77,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -125,7 +119,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network_role_tag:
         type: list
         required: true
@@ -563,4 +557,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml
index 4c725c0..80eb590 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml
@@ -431,16 +431,15 @@
           - pd_server_names
           - 0
         port_pd02_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_flavor_name:
           get_attribute:
           - network_policy_server
           - name
-        port_pd02_port_network_role_tag:
-        - oam
+        port_pd02_port_network_role_tag: oam
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -485,4 +484,4 @@
         description: heat template that creates MOG stack
       members:
       - network_policy_server
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
index 6d0690a..e1bd0ef 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -29,10 +29,8 @@
       entry_schema:
         type: string
     port_pd02_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_exCP_naming:
       type: list
       required: true
@@ -52,15 +50,11 @@
       entry_schema:
         type: string
     port_pd02_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd02_port_vlan_requirements:
       type: list
       required: true
@@ -73,7 +67,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -108,7 +102,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network_role_tag:
       type: list
       required: true
@@ -161,17 +155,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -205,17 +195,11 @@
           - port_pd02_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd02_port_ip_requirements
-          - index_value
+          get_input: port_pd02_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd02_port_network_role_tag
-          - index_value
+          get_input: port_pd02_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd02_port_mac_requirements
-          - index_value
+          get_input: port_pd02_port_mac_requirements
         order:
           get_input:
           - port_pd02_port_order
@@ -447,4 +431,4 @@
       - dependency
       dependency_pd_server_pd02_port:
       - pd_server_pd02_port
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
index a308e85..528c650 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,7 +23,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_0_network_role_tag:
         type: list
         required: true
@@ -43,7 +41,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -99,11 +97,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_subnetpoolid:
         type: list
         required: true
@@ -121,11 +117,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_vlan_requirements:
         type: list
         required: true
@@ -563,4 +557,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml
index c2acb1b..279f92e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml
@@ -54,7 +54,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - get_attribute:
@@ -83,12 +83,10 @@
           - network_policy_server
           - name
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
-        port_pd01_port_1_network_role_tag:
-        - oam
         port_pd01_port_1_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -114,4 +112,4 @@
         description: heat template that creates MOG stack
       members:
       - network_policy_server
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
index e2edfa3..2ec5581 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,7 +23,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_0_network_role_tag:
       type: list
       required: true
@@ -40,7 +38,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -87,10 +85,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_subnetpoolid:
       type: list
       required: true
@@ -105,10 +101,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_vlan_requirements:
       type: list
       required: true
@@ -161,17 +155,11 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_1_network_role_tag
-          - index_value
+          get_input: port_pd01_port_1_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -205,17 +193,13 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_0_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -447,4 +431,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index c9e53c8..594705d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,13 +23,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_0_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_network_role:
         type: list
         required: true
@@ -43,7 +39,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -99,11 +95,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_subnetpoolid:
         type: list
         required: true
@@ -121,11 +115,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_vlan_requirements:
         type: list
         required: true
@@ -579,4 +571,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml
index ef0c096..addfbc7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml
@@ -425,7 +425,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - get_input: oam_net_name
@@ -435,8 +435,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_0_network_role_tag:
-        - oam
+        port_pd01_port_0_network_role_tag: oam
         port_pd01_port_1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -452,12 +451,11 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
-        port_pd01_port_1_network_role_tag:
-        - oam
+        port_pd01_port_1_network_role_tag: oam
         port_pd01_port_1_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -501,4 +499,4 @@
       - network_policy_port0
       - network_policy_server
       - network_policy_port1
-      - abstract_pd_server
\ No newline at end of file
+      - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
index 9103bf7..6537ee7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,12 +23,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_0_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_network_role:
       type: list
       required: true
@@ -40,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -87,10 +83,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_subnetpoolid:
       type: list
       required: true
@@ -105,10 +99,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_1_network_role_tag
-          - index_value
+          get_input: port_pd01_port_1_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -205,17 +191,11 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_0_network_role_tag
-          - index_value
+          get_input: port_pd01_port_0_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -472,4 +452,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 2ad9165..763525a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_pd01_port_0_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_0_network:
         type: list
         required: true
@@ -25,13 +23,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_0_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_network_role:
         type: list
         required: true
@@ -43,7 +39,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       index_value:
         type: integer
         description: Index value of this substitution service template runtime instance
@@ -99,11 +95,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_1_subnetpoolid:
         type: list
         required: true
@@ -121,11 +115,9 @@
         entry_schema:
           type: json
       port_pd01_port_1_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_0_vlan_requirements:
         type: list
         required: true
@@ -579,4 +571,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
index 0f0b149..32c1e33 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -425,7 +425,7 @@
       - substitutable
       properties:
         port_pd01_port_0_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_0_network:
         - get_input: oam_net_name
@@ -435,8 +435,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_pd01_port_0_network_role_tag:
-        - oam
+        port_pd01_port_0_network_role_tag: oam
         port_pd01_port_1_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -452,12 +451,11 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_1_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
-        port_pd01_port_1_network_role_tag:
-        - oam
+        port_pd01_port_1_network_role_tag: oam
         port_pd01_port_1_network:
         - get_input: oam_net_name
         compute_pd_server_user_data_format:
@@ -496,4 +494,4 @@
       value:
         get_attribute:
         - abstract_pd_server
-        - pd_server_accessIPv4
\ No newline at end of file
+        - pd_server_accessIPv4
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
index 0554f63..34a617f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_pd01_port_0_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_0_network:
       type: list
       required: true
@@ -25,12 +23,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_0_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_network_role:
       type: list
       required: true
@@ -40,7 +36,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     index_value:
       type: integer
       description: Index value of this substitution service template runtime instance
@@ -87,10 +83,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_1_subnetpoolid:
       type: list
       required: true
@@ -105,10 +99,8 @@
       entry_schema:
         type: json
     port_pd01_port_1_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_0_vlan_requirements:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_1_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_1_ip_requirements
-          - index_value
+          get_input: port_pd01_port_1_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_1_network_role_tag
-          - index_value
+          get_input: port_pd01_port_1_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_1_mac_requirements
-          - index_value
+          get_input: port_pd01_port_1_mac_requirements
         order:
           get_input:
           - port_pd01_port_1_order
@@ -205,17 +191,11 @@
           - port_pd01_port_0_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_0_ip_requirements
-          - index_value
+          get_input: port_pd01_port_0_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_0_network_role_tag
-          - index_value
+          get_input: port_pd01_port_0_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_0_mac_requirements
-          - index_value
+          get_input: port_pd01_port_0_mac_requirements
         order:
           get_input:
           - port_pd01_port_0_order
@@ -472,4 +452,4 @@
       - link
       link_pd_server_pd01_port_1:
       - pd_server_pd01_port_1
-      - link
\ No newline at end of file
+      - link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 7d05b9c..5d5327b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -51,11 +51,9 @@
         entry_schema:
           type: json
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -65,7 +63,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -91,11 +89,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -483,11 +479,9 @@
         entry_schema:
           type: json
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_oam_server_availability_zone:
         type: list
         required: true
@@ -503,7 +497,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -541,11 +535,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -952,11 +944,9 @@
         entry_schema:
           type: json
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -966,7 +956,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -1349,4 +1339,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml
index 21a0a37..49797c2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml
@@ -217,7 +217,7 @@
         port_pd01_port_security_groups:
         - - jsa_security_group
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -229,8 +229,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -268,7 +267,7 @@
         port_pd01_port_security_groups:
         - - jsa_security_group
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -307,7 +306,7 @@
         port_pd01_port_security_groups:
         - - jsa_security_group
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_oam_server_availability_zone:
         - get_input: availabilityzone_name
@@ -327,8 +326,7 @@
         - get_input:
           - oam_server_names
           - 0
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_oam_server_scheduler_hints:
         - group: BE_Affinity_group
         service_template_filter:
@@ -471,4 +469,4 @@
         name: def
         affinity: host
       targets:
-      - BE_Affinity_group
\ No newline at end of file
+      - BE_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml
index 4e1b24e..7ae3192 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml
@@ -32,10 +32,8 @@
       entry_schema:
         type: json
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_oam_server_availability_zone:
       type: list
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -80,10 +78,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -111,17 +107,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -346,4 +336,4 @@
       - local_storage
       dependency_oam_server:
       - oam_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml
index 1356fb8..835f63e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml
@@ -47,10 +47,8 @@
       entry_schema:
         type: json
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -58,7 +56,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -80,10 +78,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -134,17 +130,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -354,4 +344,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml
index f408bad..4c82280 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml
@@ -52,10 +52,8 @@
       entry_schema:
         type: json
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -63,7 +61,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -111,17 +109,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -354,4 +348,4 @@
       - link
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 85ccd9d..5b3ab35 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -454,11 +450,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       compute_oam_server_availability_zone:
         type: list
         required: true
@@ -474,7 +468,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -512,11 +506,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -899,11 +891,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -913,7 +903,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -1285,4 +1275,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml
index 4a0ccad..f008605 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml
@@ -186,7 +186,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -198,8 +198,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -228,7 +227,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -260,7 +259,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         compute_oam_server_availability_zone:
         - get_input: availabilityzone_name
@@ -280,8 +279,7 @@
         - get_input:
           - oam_server_names
           - 0
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         service_template_filter:
           substitute_service_template: Nested_oam_serverServiceTemplate.yaml
           count: 1
@@ -305,4 +303,4 @@
       - network_policy_server
       - abstract_pd_server
       - abstract_ps_server
-      - abstract_oam_server
\ No newline at end of file
+      - abstract_oam_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml
index 9a034c3..e968397 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml
@@ -27,10 +27,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     compute_oam_server_availability_zone:
       type: list
       required: true
@@ -43,7 +41,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -75,10 +73,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -97,17 +93,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +309,4 @@
       - local_storage
       dependency_oam_server:
       - oam_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml
index dd358a5..68fcd79 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +309,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml
index 8ccfbad..8e8880a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml
@@ -42,10 +42,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -53,7 +51,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -97,17 +95,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +313,4 @@
       - link
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 13e08cc..3b35623 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_order:
         type: list
         required: true
@@ -460,11 +458,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -474,7 +470,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_order:
         type: list
         required: true
@@ -881,11 +877,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -895,7 +889,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -921,11 +915,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -1273,4 +1265,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml
index 6eec7d8..958eac6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml
@@ -199,7 +199,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -211,8 +211,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -242,7 +241,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -276,7 +275,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -307,4 +306,4 @@
       - network_policy_server
       - abstract_pd_server_0
       - abstract_pd_server_1
-      - abstract_pd_server_2
\ No newline at end of file
+      - abstract_pd_server_2
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml
index 2ca7b3c..19f4b83 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_order:
       type: list
       required: true
@@ -111,17 +109,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -314,4 +308,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml
index 445fc6d..a20167c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_order:
       type: list
       required: true
@@ -111,17 +109,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -314,4 +308,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml
index 08e5895..12a7a03 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +309,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
index c5923cc..72d15b3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -466,11 +462,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -480,7 +474,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -911,23 +905,19 @@
         required: true
         status: SUPPORTED
       port_pd01_port_2_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_3_ip_requirements:
         type: list
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_3_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_3_network:
         type: list
         required: true
@@ -969,11 +959,9 @@
         entry_schema:
           type: json
       port_pd01_port_2_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_pd01_port_2_exCP_naming:
         type: list
         required: true
@@ -981,11 +969,9 @@
         entry_schema:
           type: json
       port_pd01_port_3_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       compute_pd_server_user_data_format:
         type: list
         required: true
@@ -997,7 +983,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_3_exCP_naming:
         type: list
         required: true
@@ -1417,4 +1403,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml
index 873c04e..bd48f71 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml
@@ -185,8 +185,7 @@
           get_attribute:
           - network_policy_server
           - name
-        port_pd01_port_2_network_role_tag:
-        - oam
+        port_pd01_port_2_network_role_tag: oam
         port_pd01_port_3_ip_requirements:
         - - ip_version: 4
             ip_count_required:
@@ -194,7 +193,7 @@
             floating_ip_count_required:
               is_required: false
         port_pd01_port_3_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_pd01_port_3_network:
         - get_input: oam_net_name
@@ -203,10 +202,9 @@
         port_pd01_port_2_network:
         - get_input: oam_net_name
         port_pd01_port_2_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
-        port_pd01_port_3_network_role_tag:
-        - oam
+        port_pd01_port_3_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         port_pd01_port_2_ip_requirements:
@@ -244,7 +242,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -256,8 +254,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -284,7 +281,7 @@
           - network_policy_server
           - name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -318,4 +315,4 @@
       - network_policy_server
       - abstract_pd_server_0
       - abstract_pd_server_1
-      - abstract_pd_server_2
\ No newline at end of file
+      - abstract_pd_server_2
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml
index 6a96d70..e3df438 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +309,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml
index 1efd8dc..d4f7949 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -116,17 +114,13 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
           get_input:
           - port_pd01_port_network_role_tag
           - index_value
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +313,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml
index fd95fdc..4d99432 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -52,20 +52,16 @@
       type: string
       required: true
     port_pd01_port_2_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_3_ip_requirements:
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_3_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_3_network:
       type: list
       required: true
@@ -100,20 +96,16 @@
       entry_schema:
         type: json
     port_pd01_port_2_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_pd01_port_2_exCP_naming:
       type: list
       required: true
       entry_schema:
         type: json
     port_pd01_port_3_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     compute_pd_server_user_data_format:
       type: list
       required: true
@@ -123,7 +115,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_3_exCP_naming:
       type: list
       required: true
@@ -161,17 +153,11 @@
           - port_pd01_port_2_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_2_ip_requirements
-          - index_value
+          get_input: port_pd01_port_2_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_2_network_role_tag
-          - index_value
+          get_input: port_pd01_port_2_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_2_mac_requirements
-          - index_value
+          get_input: port_pd01_port_2_mac_requirements
         order:
           get_input:
           - port_pd01_port_2_order
@@ -205,17 +191,11 @@
           - port_pd01_port_3_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_3_ip_requirements
-          - index_value
+          get_input: port_pd01_port_3_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_3_network_role_tag
-          - index_value
+          get_input: port_pd01_port_3_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_3_mac_requirements
-          - index_value
+          get_input: port_pd01_port_3_mac_requirements
         order:
           get_input:
           - port_pd01_port_3_order
@@ -447,4 +427,4 @@
       - dependency
       dependency_pd_server_pd01_port_3:
       - pd_server_pd01_port_3
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
index fb56d43..71931ab 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -500,11 +496,9 @@
         entry_schema:
           type: string
       port_ps01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_ps01_port_network:
         type: list
         required: true
@@ -516,13 +510,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_ps01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_ps01_port_exCP_naming:
         type: list
         required: true
@@ -870,4 +862,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml
index f8c0769..a665ced 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml
@@ -364,7 +364,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_attribute:
@@ -378,8 +378,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -410,7 +409,7 @@
           - abstract_pd_server
           - pd_server_accessIPv4
         port_ps01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_ps01_port_network:
         - get_input: oam_net_name
@@ -420,8 +419,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_ps01_port_network_role_tag:
-        - oam
+        port_ps01_port_network_role_tag: oam
         service_template_filter:
           substitute_service_template: Nested_ps_serverServiceTemplate.yaml
           count: 1
@@ -438,4 +436,4 @@
         description: heat template that creates MOG stack
       members:
       - abstract_pd_server
-      - abstract_ps_server
\ No newline at end of file
+      - abstract_ps_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml
index ad0a81d..85cf7bf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -328,4 +318,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml
index d92309c..73a128e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml
@@ -60,10 +60,8 @@
       entry_schema:
         type: string
     port_ps01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_ps01_port_network:
       type: list
       required: true
@@ -73,12 +71,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_ps01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_ps01_port_exCP_naming:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_ps01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_ps01_port_ip_requirements
-          - index_value
+          get_input: port_ps01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_ps01_port_network_role_tag
-          - index_value
+          get_input: port_ps01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_ps01_port_mac_requirements
-          - index_value
+          get_input: port_ps01_port_mac_requirements
         order:
           get_input:
           - port_ps01_port_order
@@ -328,4 +318,4 @@
       - dependency
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 2ef83fe..5c437f9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -39,11 +39,9 @@
         required: true
         status: SUPPORTED
       port_pd01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       vm_image_name:
         type: string
         required: true
@@ -53,7 +51,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_pd01_port_network:
         type: list
         required: true
@@ -79,11 +77,9 @@
         entry_schema:
           type: string
       port_pd01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_pd01_port_vlan_requirements:
         type: list
         required: true
@@ -494,11 +490,9 @@
         entry_schema:
           type: string
       port_ps01_port_mac_requirements:
-        type: list
+        type: org.openecomp.datatypes.network.MacRequirements
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: json
       port_ps01_port_network:
         type: list
         required: true
@@ -510,13 +504,11 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.network.IpRequirements
       port_ps01_port_network_role_tag:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_ps01_port_exCP_naming:
         type: list
         required: true
@@ -858,4 +850,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml
index 645929f..863f428 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml
@@ -364,7 +364,7 @@
         vm_flavor_name:
           get_input: pd_flavor_name
         port_pd01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         vm_image_name:
           get_input: pd_image_name
@@ -376,8 +376,7 @@
               is_required: false
         port_pd01_port_network:
         - get_input: oam_net_name
-        port_pd01_port_network_role_tag:
-        - oam
+        port_pd01_port_network_role_tag: oam
         compute_pd_server_user_data_format:
         - RAW
         service_template_filter:
@@ -406,7 +405,7 @@
         vm_image_name:
           get_input: pd_image_name
         port_ps01_port_mac_requirements:
-        - mac_count_required:
+          mac_count_required:
             is_required: false
         port_ps01_port_network:
         - get_input: oam_net_name
@@ -416,8 +415,7 @@
               is_required: false
             floating_ip_count_required:
               is_required: false
-        port_ps01_port_network_role_tag:
-        - oam
+        port_ps01_port_network_role_tag: oam
         service_template_filter:
           substitute_service_template: Nested_ps_serverServiceTemplate.yaml
           count: 1
@@ -434,4 +432,4 @@
         description: heat template that creates MOG stack
       members:
       - abstract_pd_server
-      - abstract_ps_server
\ No newline at end of file
+      - abstract_ps_server
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml
index dd358a5..68fcd79 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml
@@ -37,10 +37,8 @@
       type: string
       required: true
     port_pd01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     vm_image_name:
       type: string
       required: true
@@ -48,7 +46,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_pd01_port_network:
       type: list
       required: true
@@ -70,10 +68,8 @@
       entry_schema:
         type: string
     port_pd01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_pd01_port_vlan_requirements:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_pd01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_pd01_port_ip_requirements
-          - index_value
+          get_input: port_pd01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_pd01_port_network_role_tag
-          - index_value
+          get_input: port_pd01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_pd01_port_mac_requirements
-          - index_value
+          get_input: port_pd01_port_mac_requirements
         order:
           get_input:
           - port_pd01_port_order
@@ -319,4 +309,4 @@
       - dependency
       dependency_pd_server:
       - pd_server
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml
index c16b51c..a447cf0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml
@@ -60,10 +60,8 @@
       entry_schema:
         type: string
     port_ps01_port_mac_requirements:
-      type: list
+      type: org.openecomp.datatypes.network.MacRequirements
       required: true
-      entry_schema:
-        type: json
     port_ps01_port_network:
       type: list
       required: true
@@ -73,12 +71,10 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.network.IpRequirements
     port_ps01_port_network_role_tag:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_ps01_port_exCP_naming:
       type: list
       required: true
@@ -116,17 +112,11 @@
           - port_ps01_port_vlan_requirements
           - index_value
         ip_requirements:
-          get_input:
-          - port_ps01_port_ip_requirements
-          - index_value
+          get_input: port_ps01_port_ip_requirements
         network_role_tag:
-          get_input:
-          - port_ps01_port_network_role_tag
-          - index_value
+          get_input: port_ps01_port_network_role_tag
         mac_requirements:
-          get_input:
-          - port_ps01_port_mac_requirements
-          - index_value
+          get_input: port_ps01_port_mac_requirements
         order:
           get_input:
           - port_ps01_port_order
@@ -319,4 +309,4 @@
       - dependency
       local_storage_ps_server:
       - ps_server
-      - local_storage
\ No newline at end of file
+      - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 13cccd3..fcfd613 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_network_role_tag:
         type: list
         required: true
@@ -97,11 +95,9 @@
         entry_schema:
           type: string
       port_FSB2_Internal1_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal1_vlan_requirements:
         type: list
         required: true
@@ -145,11 +141,9 @@
         entry_schema:
           type: string
       port_FSB2_Internal2_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal2_mac_requirements:
         type: list
         required: true
@@ -247,7 +241,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB2_Internal2_order:
         type: list
         required: true
@@ -847,4 +841,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml
index ac5e7b1..c419c0d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB1_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_network_role_tag:
       type: list
       required: true
@@ -85,10 +83,8 @@
       entry_schema:
         type: string
     port_FSB2_Internal1_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal1_vlan_requirements:
       type: list
       required: true
@@ -125,10 +121,8 @@
       entry_schema:
         type: string
     port_FSB2_Internal2_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal2_mac_requirements:
       type: list
       required: true
@@ -210,7 +204,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB2_Internal2_order:
       type: list
       required: true
@@ -277,9 +271,7 @@
           - port_FSB1_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal_mac_address
-          - index_value
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -321,9 +313,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -373,9 +363,7 @@
           - port_FSB2_Internal2_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal2_mac_address
-          - index_value
+          get_input: port_FSB2_Internal2_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -445,9 +433,7 @@
           - port_FSB2_Internal1_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal1_mac_address
-          - index_value
+          get_input: port_FSB2_Internal1_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml
index dda1f42..b7a2b29 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_network_role_tag:
         type: list
         required: true
@@ -165,11 +163,9 @@
         entry_schema:
           type: json
       port_FSB2_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal_exCP_naming:
         type: list
         required: true
@@ -187,7 +183,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB2_Internal_network:
         type: list
         required: true
@@ -709,4 +705,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml
index 76dbaad..ca12b43 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB1_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_network_role_tag:
       type: list
       required: true
@@ -142,10 +140,8 @@
       entry_schema:
         type: json
     port_FSB2_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal_exCP_naming:
       type: list
       required: true
@@ -160,7 +156,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB2_Internal_network:
       type: list
       required: true
@@ -227,9 +223,7 @@
           - port_FSB1_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal_mac_address
-          - index_value
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -275,9 +269,7 @@
           - port_FSB2_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal_mac_address
-          - index_value
+          get_input: port_FSB2_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -319,9 +311,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -604,4 +594,4 @@
       - link
       dependency_FSB1_FSB2_Internal:
       - FSB1_FSB2_Internal
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
index e258155..aabb513 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB1_Internal_ip_requirements:
         type: list
         required: true
@@ -117,11 +115,9 @@
         entry_schema:
           type: json
       port_FSB2_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal_exCP_naming:
         type: list
         required: true
@@ -612,4 +608,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml
index adc80ea..39e93ab 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB1_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB1_Internal_ip_requirements:
       type: list
       required: true
@@ -102,10 +100,8 @@
       entry_schema:
         type: json
     port_FSB2_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal_exCP_naming:
       type: list
       required: true
@@ -177,9 +173,7 @@
           - port_FSB1_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal_mac_address
-          - index_value
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -225,9 +219,7 @@
           - port_FSB2_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal_mac_address
-          - index_value
+          get_input: port_FSB2_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -532,4 +524,4 @@
       - local_storage
       dependency_FSB1_FSB2_Internal:
       - FSB1_FSB2_Internal
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 40048e4..f50192d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB_OAM_network_role_tag:
         type: list
         required: true
@@ -165,11 +163,9 @@
         entry_schema:
           type: json
       port_FSB2_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal_exCP_naming:
         type: list
         required: true
@@ -187,7 +183,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB2_Internal_network:
         type: list
         required: true
@@ -745,4 +741,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml
index 4faca73..62d4836 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB1_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB_OAM_network_role_tag:
       type: list
       required: true
@@ -142,10 +140,8 @@
       entry_schema:
         type: json
     port_FSB2_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal_exCP_naming:
       type: list
       required: true
@@ -160,7 +156,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB2_Internal_network:
       type: list
       required: true
@@ -227,9 +223,7 @@
           - port_FSB1_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB1_Internal_mac_address
-          - index_value
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -275,9 +269,7 @@
           - port_FSB2_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal_mac_address
-          - index_value
+          get_input: port_FSB2_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -319,9 +311,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -661,4 +651,4 @@
       - link
       dependency_FSB1_FSB2_Internal:
       - FSB1_FSB2_Internal
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
index 84bab83..ecbec2f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -9,11 +9,9 @@
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
       port_FSB1_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB1_Internal_ip_requirements:
         type: list
         required: true
@@ -75,11 +73,9 @@
         required: true
         status: SUPPORTED
       port_FSB2_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal_network_role:
         type: list
         required: true
@@ -606,4 +602,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml
index cb7a412..07013e3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml
@@ -12,10 +12,8 @@
 topology_template:
   inputs:
     port_FSB1_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB1_Internal_ip_requirements:
       type: list
       required: true
@@ -67,10 +65,8 @@
       type: string
       required: true
     port_FSB2_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal_network_role:
       type: list
       required: true
@@ -172,9 +168,7 @@
           - FSB1_FSB2_Internal
           - device_id
         mac_address:
-          get_input:
-          - port_FSB1_Internal_mac_address
-          - index_value
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -224,9 +218,7 @@
           - port_FSB2_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal_mac_address
-          - index_value
+          get_input: port_FSB2_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -531,4 +523,4 @@
       - local_storage
       dependency_FSB1_FSB2_Internal:
       - FSB1_FSB2_Internal
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
index b9a4485..8c6ae90 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -8,6 +8,10 @@
   org.openecomp.resource.abstract.nodes.FSB1:
     derived_from: org.openecomp.resource.abstract.nodes.VFC
     properties:
+      port_FSB1_Internal_mac_address:
+        type: string
+        required: true
+        status: SUPPORTED
       port_FSB_OAM_network_role_tag:
         type: list
         required: true
@@ -147,11 +151,9 @@
         entry_schema:
           type: json
       port_FSB2_Internal_mac_address:
-        type: list
+        type: string
         required: true
         status: SUPPORTED
-        entry_schema:
-          type: string
       port_FSB2_Internal_exCP_naming:
         type: list
         required: true
@@ -169,7 +171,7 @@
         required: true
         status: SUPPORTED
         entry_schema:
-          type: json
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
       port_FSB2_Internal_network:
         type: list
         required: true
@@ -721,4 +723,4 @@
         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
         occurrences:
         - 1
-        - UNBOUNDED
\ No newline at end of file
+        - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml
index 6cd3625..c6275a1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml
@@ -11,6 +11,9 @@
     derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
 topology_template:
   inputs:
+    port_FSB1_Internal_mac_address:
+      type: string
+      required: true
     port_FSB_OAM_network_role_tag:
       type: list
       required: true
@@ -127,10 +130,8 @@
       entry_schema:
         type: json
     port_FSB2_Internal_mac_address:
-      type: list
+      type: string
       required: true
-      entry_schema:
-        type: string
     port_FSB2_Internal_exCP_naming:
       type: list
       required: true
@@ -145,7 +146,7 @@
       type: list
       required: true
       entry_schema:
-        type: json
+        type: org.openecomp.datatypes.heat.neutron.port.FixedIps
     port_FSB2_Internal_network:
       type: list
       required: true
@@ -207,9 +208,7 @@
           - port_FSB1_Internal_network
           - index_value
         mac_address:
-          get_attribute:
-          - FSB1
-          - mac
+          get_input: port_FSB1_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -255,9 +254,7 @@
           - port_FSB2_Internal_network
           - index_value
         mac_address:
-          get_input:
-          - port_FSB2_Internal_mac_address
-          - index_value
+          get_input: port_FSB2_Internal_mac_address
       requirements:
       - binding:
           capability: tosca.capabilities.network.Bindable
@@ -299,9 +296,7 @@
           - port_FSB_OAM_subnetpoolid
           - index_value
         fixed_ips:
-          get_input:
-          - port_FSB_OAM_fixed_ips
-          - index_value
+          get_input: port_FSB_OAM_fixed_ips
         network:
           get_input:
           - port_FSB_OAM_network
@@ -636,4 +631,4 @@
       - link
       dependency_FSB1_FSB2_Internal:
       - FSB1_FSB2_Internal
-      - dependency
\ No newline at end of file
+      - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml
index ac134c3..11847d0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml
@@ -180,7 +180,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
+          get_input: fsb1-Internal1-mac
         vm_flavor_name:
           get_input: fsb-flavor
         vm_image_name:
@@ -192,7 +192,7 @@
         port_FSB1_Internal_network:
         - Internal1-net
         port_FSB2_Internal_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal2-mac
         port_FSB_OAM_fixed_ips:
         - - ip_address:
               get_input: fsb1-oam-ip
@@ -225,4 +225,4 @@
       - FSB2_Internal2
       - FSB1_Internal1
       - FSB1_OAM
-      - FSB1_template
\ No newline at end of file
+      - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml
index 8bb81bc..55e4754 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml
@@ -159,7 +159,7 @@
       - substitutable
       properties:
         port_FSB1_Internal1_mac_address:
-        - get_input: fsb1-Internal1-mac
+          get_input: fsb1-Internal1-mac
         port_FSB1_Internal2_network:
         - Internal2-net
         port_FSB1_Internal1_network:
@@ -167,7 +167,7 @@
         vm_flavor_name:
           get_input: fsb-flavor
         port_FSB1_Internal2_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         vm_image_name:
           get_input: fsb-image
         compute_FSB_admin_pass:
@@ -198,4 +198,4 @@
       members:
       - FSB1_Internal2
       - FSB1_Internal1
-      - FSB1_template
\ No newline at end of file
+      - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml
index 92fc5bd..0a226df 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml
@@ -241,8 +241,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB_user_data:
         - OPTIONAL-DATA-FSB1
         - null
@@ -257,8 +256,7 @@
         - Internal1-net-fsb1-Internal1
         - Internal1-net-fsb1-Internal2
         port_FSB2_Internal_mac_address:
-        - get_input: fsb2-Internal1-mac
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal_network:
         - Internal2-net-fsb2-Internal1
         - Internal2-net-fsb2-Internal2
@@ -296,4 +294,4 @@
       - FSB2_Internal1
       - FSB2_Internal2
       - FSB1_template
-      - FSB2_template
\ No newline at end of file
+      - FSB2_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml
index 209d729..371b190 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml
@@ -143,7 +143,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB1_availability_zone:
         - get_input: fsb_zone
         port_FSB1_Internal_network:
@@ -151,7 +151,7 @@
         vm_flavor_name:
           get_input: fsb1-flavor
         port_FSB2_Internal_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal2-mac
         port_FSB2_Internal_network:
         - Internal2-net
         service_template_filter:
@@ -291,4 +291,4 @@
             - abstract_FSB1_0
             - FSB1_FSB1_Internal_accessIPv6
         - 0
-        - OS-EXT-IPS-MAC:mac_addr
\ No newline at end of file
+        - OS-EXT-IPS-MAC:mac_addr
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml
index 492e645..623b14c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml
@@ -238,8 +238,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB_user_data:
         - STATIC-DATA-FSB1
         - STATIC-DATA-FSB2
@@ -254,8 +253,7 @@
         - Internal1-net-fsb1-Internal1
         - Internal1-net-fsb1-Internal2
         port_FSB2_Internal_mac_address:
-        - get_input: fsb2-Internal1-mac
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal_network:
         - Internal2-net-fsb2-Internal1
         - Internal2-net-fsb2-Internal2
@@ -317,4 +315,4 @@
       - FSB2_template
       - jsa_net
       - jsa_net1
-      - packet_mirror_network_name
\ No newline at end of file
+      - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml
index b7bb7cb..5019e08 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml
@@ -251,8 +251,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB_user_data:
         - OPTIONAL-DATA-FSB1
         - null
@@ -267,8 +266,7 @@
         - Internal1-net-fsb1-Internal1
         - Internal1-net-fsb1-Internal2
         port_FSB2_Internal_mac_address:
-        - get_input: fsb2-Internal1-mac
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal_network:
         - Internal2-net-fsb2-Internal1
         - Internal2-net-fsb2-Internal2
@@ -319,4 +317,4 @@
       - jsa_net
       - jsa_net1
       - packet_mirror_network
-      - jsa_security_group
\ No newline at end of file
+      - jsa_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml
index 5cd7faa..fb0d179 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml
@@ -238,8 +238,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB_user_data:
         - OPTIONAL-DATA-FSB1
         - null
@@ -254,8 +253,7 @@
         - Internal1-net-fsb1-Internal1
         - Internal1-net-fsb1-Internal2
         port_FSB2_Internal_mac_address:
-        - get_input: fsb2-Internal1-mac
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal_network:
         - Internal2-net-fsb2-Internal1
         - Internal2-net-fsb2-Internal2
@@ -309,4 +307,4 @@
       - FSB2_template
       - jsa_net
       - jsa_net1
-      - packet_mirror_network_name
\ No newline at end of file
+      - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml
index 1779261..a551227 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml
@@ -174,7 +174,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
+          get_input: fsb1-Internal1-mac
         vm_flavor_name:
           get_input: fsb-flavor
         vm_image_name:
@@ -186,7 +186,7 @@
         port_FSB1_Internal_network:
         - Internal1-net
         port_FSB2_Internal_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal2-mac
         port_FSB_OAM_fixed_ips:
         - - ip_address:
               get_input: fsb1-oam-ip
@@ -233,4 +233,4 @@
       - FSB1_Internal1
       - FSB1_OAM
       - FSB1_template
-      - packet_mirror_network_name
\ No newline at end of file
+      - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml
index e5513bd..cde2c25 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml
@@ -278,8 +278,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal1-mac
         compute_FSB_user_data:
         - OPTIONAL-DATA-FSB1
         - null
@@ -294,8 +293,7 @@
         - Internal1-net-fsb1-Internal1
         - Internal1-net-fsb1-Internal2
         port_FSB2_Internal_mac_address:
-        - get_input: fsb2-Internal1-mac
-        - get_input: fsb2-Internal2-mac
+          get_input: fsb2-Internal1-mac
         port_FSB2_Internal_network:
         - Internal2-net-fsb2-Internal1
         - Internal2-net-fsb2-Internal2
@@ -357,4 +355,4 @@
       - FSB2_template
       - jsa_net
       - jsa_net1
-      - packet_mirror_network_name
\ No newline at end of file
+      - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml
index 54d4cfe..4b8efb2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml
@@ -194,7 +194,7 @@
       - substitutable
       properties:
         port_FSB1_Internal_mac_address:
-        - get_input: fsb1-Internal1-mac
+          get_input: fsb1-Internal1-mac
         vm_flavor_name:
           get_input: fsb-flavor
         vm_image_name:
@@ -206,7 +206,7 @@
         port_FSB1_Internal_network:
         - Internal1-net
         port_FSB2_Internal_mac_address:
-        - get_input: fsb1-Internal2-mac
+          get_input: fsb1-Internal2-mac
         port_FSB_OAM_fixed_ips:
         - - ip_address:
               get_input: fsb1-oam-ip
@@ -261,4 +261,4 @@
       - FSB1_Internal1
       - FSB1_OAM
       - FSB1_template
-      - packet_mirror_network_name
\ No newline at end of file
+      - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
index 6308064..28b9c67 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
@@ -595,7 +595,7 @@
     if (status != null) {
       paramDef.setStatus(status);
     }
-    paramDef.setEntry_schema(entrySchema);
+    paramDef.setEntry_schema(entrySchema == null ? null : entrySchema.clone());
     paramDef.set_default(defaultVal);
 
     mdcDataDebugMessage.debugExitMessage(null, null);
diff --git a/openecomp-be/pom.xml b/openecomp-be/pom.xml
index 6e4a9ad..92d5bcc 100644
--- a/openecomp-be/pom.xml
+++ b/openecomp-be/pom.xml
@@ -22,6 +22,7 @@
         <module>/configuration</module>
         <module>/tools/swagger-ui</module>
         <module>/tools/migration/1702_to_1707_zusammen</module>
+        <module>/tools/zusammen-tools</module>
         <module>/backend</module>
     </modules>
 
diff --git a/openecomp-be/tools/migration/1702_to_1707_zusammen/src/main/java/org/openecomp/core/migration/convertors/VspInformationConvertor.java b/openecomp-be/tools/migration/1702_to_1707_zusammen/src/main/java/org/openecomp/core/migration/convertors/VspInformationConvertor.java
index b7a1d42..59fba5f 100644
--- a/openecomp-be/tools/migration/1702_to_1707_zusammen/src/main/java/org/openecomp/core/migration/convertors/VspInformationConvertor.java
+++ b/openecomp-be/tools/migration/1702_to_1707_zusammen/src/main/java/org/openecomp/core/migration/convertors/VspInformationConvertor.java
@@ -55,13 +55,21 @@
 
   public static CollaborationElement[] convertVspToElement(VspInformation vspInformation) {
 
-    CollaborationElement[] vspElements = new CollaborationElement[4];
+    CollaborationElement[] vspElements;
+    if(vspInformation.getQuestionnaireData() == null){
+      vspElements = new CollaborationElement[4];
+    }else{
+      vspElements = new CollaborationElement[5];
+    }
+
+    int index=0;
+
     List<String> vspNamespace = getVspNamespace(vspInformation);
 
 
     String vspEntityId = StructureElement.General.name();
 
-    vspElements[0] = ElementHandler.getElementEntity(
+    vspElements[index] = ElementHandler.getElementEntity(
         vspInformation.getId(), vspInformation.getVersion().toString(),
         vspEntityId,
         vspNamespace,
@@ -70,8 +78,9 @@
         null,
         null);
 
+    index++;
     String vspOrchestrationTemplateEntityId = StructureElement.OrchestrationTemplate.name();
-    vspElements[1] = ElementHandler.getElementEntity(
+    vspElements[index] = ElementHandler.getElementEntity(
         vspInformation.getId(), vspInformation.getVersion().toString(),
         vspOrchestrationTemplateEntityId,
         vspNamespace,
@@ -80,11 +89,23 @@
         null,
         null);
 
-
+    if(vspInformation.getQuestionnaireData()!= null) {
+      index++;
+      String vspQuestionnaireEntityId = StructureElement.Questionnaire.name();
+      vspElements[index] = ElementHandler.getElementEntity(
+          vspInformation.getId(), vspInformation.getVersion().toString(),
+          vspQuestionnaireEntityId,
+          vspNamespace,
+          ElementHandler.getStructuralElementInfo(vspQuestionnaireEntityId),
+          null,
+          null,
+          vspInformation.getQuestionnaireData().getBytes() != null ? vspInformation
+              .getQuestionnaireData().getBytes() : null);
+    }
     vspNamespace.add(vspOrchestrationTemplateEntityId);
-
+    index++;
     String vspOrchestrationTemplateValidationDataEntityId = StructureElement.OrchestrationTemplateValidationData.name();
-    vspElements[2] = ElementHandler.getElementEntity(
+    vspElements[index] = ElementHandler.getElementEntity(
         vspInformation.getId(), vspInformation.getVersion().toString(),
         vspOrchestrationTemplateValidationDataEntityId,
         vspNamespace,
@@ -93,9 +114,9 @@
         null,
         vspInformation.getValidationData()!= null?vspInformation.getValidationData().getBytes()
             :null);
-
+    index++;
     String vspOrchestrationTemplateContentEntityId = StructureElement.OrchestrationTemplateContent.name();
-    vspElements[3] = ElementHandler.getElementEntity(
+    vspElements[index] = ElementHandler.getElementEntity(
         vspInformation.getId(), vspInformation.getVersion().toString(),
         vspOrchestrationTemplateContentEntityId,
         vspNamespace,
diff --git a/openecomp-be/tools/zusammen-tools/pom.xml b/openecomp-be/tools/zusammen-tools/pom.xml
new file mode 100644
index 0000000..57f3250
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/pom.xml
@@ -0,0 +1,246 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <properties>
+
+        <groovy.version>2.4.7</groovy.version>
+        <janino.version>2.7.7</janino.version>
+
+    </properties>
+
+
+
+    <name>openecomp-zusammen-tools</name>
+    <dependencies>
+        <dependency>
+            <groupId>org.openecomp.sdc</groupId>
+            <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <artifactId>openecomp-zusammen-plugin</artifactId>
+            <groupId>org.openecomp.sdc.core</groupId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdc</groupId>
+            <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdc</groupId>
+            <artifactId>openecomp-sdc-vendor-license-api</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdc</groupId>
+            <artifactId>openecomp-sdc-model-impl</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdc.core</groupId>
+            <artifactId>openecomp-zusammen-core</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>com.amdocs.zusammen.plugin</groupId>
+            <artifactId>zusammen-state-store-cassandra-plugin</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>org.hibernate</groupId>
+            <artifactId>hibernate-validator</artifactId>
+            <version>RELEASE</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdc</groupId>
+            <artifactId>openecomp-sdc-vendor-license-core</artifactId>
+            <version>1.1.0-SNAPSHOT</version>
+        </dependency>
+    </dependencies>
+    <artifactId>openecomp-zusammen-tools</artifactId>
+    <groupId>org.openecomp.sdc.core.tools</groupId>
+    <version>1.0-SNAPSHOT</version>
+    <parent>
+        <groupId>org.openecomp.sdc</groupId>
+        <artifactId>openecomp-sdc-lib</artifactId>
+        <relativePath>../../lib</relativePath>
+        <version>1.1.0-SNAPSHOT</version>
+    </parent>
+    <!--parent>
+        <groupId>org.openecomp.sdc</groupId>
+        <artifactId>openecomp-sdc</artifactId>
+        <version>1.0-SNAPSHOT</version>
+    </parent-->
+    <build>
+        <plugins>
+
+            <!-- ================================================== -->
+            <!-- Set the JDK compiler version.                      -->
+            <!-- ================================================== -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>2.5.1</version>
+                <inherited>true</inherited>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
+                </configuration>
+            </plugin>
+
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>license-maven-plugin</artifactId>
+                <version>1.10</version>
+                <configuration>
+                    <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
+                    <processStartTag>
+                        ============LICENSE_START=======================================================
+                    </processStartTag>
+                    <processEndTag>
+                        ============LICENSE_END=========================================================
+                    </processEndTag>
+                    <sectionDelimiter>
+                        ================================================================================
+                    </sectionDelimiter>
+                    <licenseName>apache_v2</licenseName>
+                    <inceptionYear>2017</inceptionYear>
+                    <organizationName>AT&amp;T Intellectual Property. All rights reserved.
+                    </organizationName>
+                    <projectName>SDC</projectName>
+                    <canUpdateCopyright>true</canUpdateCopyright>
+                    <canUpdateDescription>true</canUpdateDescription>
+                    <canUpdateLicense>true</canUpdateLicense>
+                    <emptyLineAfterHeader>true</emptyLineAfterHeader>
+                    <verbose>false</verbose>
+                    <includes>
+                        <include>**/*.java</include>
+                        <include>**/*.js</include>
+                        <include>**/*.ts</include>
+                    </includes>
+                    <roots>
+                        <root>src</root>
+                        <root>app</root>
+                        <root>server-mock</root>
+                        <root>typings</root>
+                    </roots>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>first</id>
+                        <goals>
+                            <goal>update-file-header</goal>
+                        </goals>
+                        <!--phase>process-sources</phase-->
+                    </execution>
+                </executions>
+            </plugin>
+
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.8</version>
+                <executions>
+                    <execution>
+                        <id>copy-dependencies</id>
+                        <phase>install</phase>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${project.build.directory}/lib</outputDirectory>
+                            <overWriteReleases>false</overWriteReleases>
+                            <overWriteSnapshots>false</overWriteSnapshots>
+                            <overWriteIfNewer>true</overWriteIfNewer>
+                            <!--includeScope>runtime</includeScope-->
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                    </execution>
+                </executions>
+                <configuration>
+                    <archive>
+                        <manifest>
+                            <addClasspath>true</addClasspath>
+                            <classpathLayoutType>custom</classpathLayoutType>
+                            <customClasspathLayout>
+                                lib/${artifact.artifactId}-${baseVersion}.${artifact.extension}
+                            </customClasspathLayout>
+                            <mainClass>org.openecomp.core.tools.main.ZusammenMainTool
+                            </mainClass>
+                        </manifest>
+                        <manifestEntries>
+                            <Class-Path>lib/</Class-Path>
+                        </manifestEntries>
+                    </archive>
+                </configuration>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+                <version>2.19.1</version>
+                <configuration>
+                    <useSystemClassLoader>false</useSystemClassLoader>
+                    <redirectTestOutputToFile>true</redirectTestOutputToFile>
+                </configuration>
+            </plugin>
+
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-antrun-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>ant-test</id>
+                        <phase>package</phase>
+                        <configuration>
+                            <tasks>
+                                <fixcrlf srcdir="./" eol="unix"
+                                         includes="zusammenMainTool.sh"/>
+                            </tasks>
+                        </configuration>
+                        <goals>
+                            <goal>run</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>Generate assembly</id>
+                        <phase>install</phase>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                    </execution>
+                </executions>
+                <configuration>
+                    <descriptors>
+                        <descriptor>${basedir}/src/main/assembly/zusammen-tools-lib-assembly.xml
+                        </descriptor>
+                    </descriptors>
+                    <appendAssemblyId>false</appendAssemblyId>
+                    <finalName>openecomp-zusammen-tools-lib</finalName>
+                </configuration>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>
\ No newline at end of file
diff --git a/openecomp-be/tools/zusammen-tools/src/main/assembly/zusammen-tools-lib-assembly.xml b/openecomp-be/tools/zusammen-tools/src/main/assembly/zusammen-tools-lib-assembly.xml
new file mode 100644
index 0000000..923115e
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/assembly/zusammen-tools-lib-assembly.xml
@@ -0,0 +1,39 @@
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+		  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+		  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+	<id>tools</id>
+	<formats>
+		<format>zip</format>
+	</formats>
+
+	<includeBaseDirectory>false</includeBaseDirectory>
+
+	<files>
+		<file>
+			<source>src/main/resources/zusammenMainTool.sh</source>
+		</file>
+	</files>
+
+	<fileSets>
+		<fileSet>
+			<includes>
+				<include>zusammenMainTool.sh</include>
+			</includes>
+			<fileMode>0755</fileMode>
+		</fileSet>
+		<fileSet>
+			<directory>${basedir}/target</directory>
+			<includes>
+				<include>
+					openecomp-zusammen*.jar
+				</include>
+			</includes>
+			<outputDirectory>/</outputDirectory>
+		</fileSet>
+		<fileSet>
+			<directory>${basedir}/target/lib</directory>
+			<outputDirectory>/lib</outputDirectory>
+		</fileSet>
+	</fileSets>
+</assembly>
+
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/Commands/ResetOldVersion.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/Commands/ResetOldVersion.java
new file mode 100644
index 0000000..185e800
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/Commands/ResetOldVersion.java
@@ -0,0 +1,81 @@
+package org.openecomp.core.tools.Commands;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.impl.ItemCassandraDao;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.impl.VersionCassandraDao;
+import org.openecomp.core.tools.loaders.VersionInfoCassandraLoader;
+import org.openecomp.core.tools.loaders.zusammen.VspGeneralLoader;
+import org.openecomp.core.tools.store.ElementHandler;
+import org.openecomp.core.zusammen.impl.CassandraConnectionInitializer;
+import org.openecomp.core.zusammen.plugin.dao.impl.CassandraElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
+import org.openecomp.sdc.versioning.dao.types.VersionInfoEntity;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ResetOldVersion {
+
+
+  public static Map<String, List<String>> itemVersionMap = new HashMap<>();
+
+  public static void reset(SessionContext context, String oldVersion) {
+
+
+
+    CassandraConnectionInitializer.setCassandraConnectionPropertiesToSystem();
+
+    loadItemVersionInfo(context);
+
+    Map<String, ElementEntity> generalElementMap =
+        VspGeneralLoader.load(context,
+             itemVersionMap);
+
+    generalElementMap.values().forEach(elementEntity -> updateOldVersionFlag(elementEntity,oldVersion));
+
+
+    itemVersionMap.entrySet().forEach(entry->entry.getValue().stream().filter
+        (version->generalElementMap.containsKey(context.getUser().getUserName()+"_"+entry.getKey()
+            +"_"+version)).forEach(version->ElementHandler.update(context,
+        entry.getKey(),version,generalElementMap.get(context.getUser().getUserName()+"_"+entry.getKey()
+            +"_"+version))));
+  }
+
+  private static void updateOldVersionFlag(ElementEntity elementEntity, String oldVersion) {
+    elementEntity.getInfo().addProperty("oldVersion",oldVersion);
+  }
+
+
+  private static void loadItemVersionInfo(SessionContext context) {
+
+    List<String> items = new ArrayList<>();
+    System.setProperty("cassandra.dox.keystore", "dox");
+    VersionInfoCassandraLoader versionInfoCassandraLoader = new VersionInfoCassandraLoader();
+    Collection<VersionInfoEntity> versions =
+        versionInfoCassandraLoader.list();
+
+    versions.stream().filter(versionInfoEntity -> versionInfoEntity.getEntityType().equals
+        (VendorSoftwareProductConstants.VENDOR_SOFTWARE_PRODUCT_VERSIONABLE_TYPE)).forEach
+        (versionInfoEntity
+            -> items.add(versionInfoEntity.getEntityId()));
+    System.setProperty("cassandra.dox.keystore", "zusammen_dox");
+    VersionCassandraDao versionCassandraDao = new VersionCassandraDao();
+
+    items
+        .forEach(itemId -> versionCassandraDao.list(context, context.getUser().getUserName(), new Id
+            (itemId)).forEach(itemVersion -> addItemVersion(itemId, itemVersion.getId())));
+
+  }
+
+  private static void addItemVersion(String itemId, Id versionId) {
+    if (!itemVersionMap.containsKey(itemId)) {
+      itemVersionMap.put(itemId, new ArrayList<>());
+    }
+    itemVersionMap.get(itemId).add(versionId.getValue());
+  }
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/VersionInfoCassandraLoader.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/VersionInfoCassandraLoader.java
new file mode 100644
index 0000000..8840975
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/VersionInfoCassandraLoader.java
@@ -0,0 +1,53 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.core.tools.loaders;
+
+import com.datastax.driver.mapping.Mapper;
+import com.datastax.driver.mapping.Result;
+import com.datastax.driver.mapping.annotations.Accessor;
+import com.datastax.driver.mapping.annotations.Query;
+import org.openecomp.core.nosqldb.api.NoSqlDb;
+import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
+import org.openecomp.sdc.versioning.dao.types.VersionInfoEntity;
+
+import java.util.Collection;
+
+public class VersionInfoCassandraLoader  {
+
+  private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+  private static Mapper<VersionInfoEntity> mapper =
+      noSqlDb.getMappingManager().mapper(VersionInfoEntity.class);
+  private static VersionInfoAccessor accessor =
+      noSqlDb.getMappingManager().createAccessor(VersionInfoAccessor.class);
+
+
+
+
+  public Collection<VersionInfoEntity> list() {
+    return accessor.getAll().all();
+  }
+
+  @Accessor
+  interface VersionInfoAccessor {
+    @Query("select * from version_info ")
+    Result<VersionInfoEntity> getAll();
+  }
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspGeneralLoader.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspGeneralLoader.java
new file mode 100644
index 0000000..d92866b
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspGeneralLoader.java
@@ -0,0 +1,40 @@
+package org.openecomp.core.tools.loaders.zusammen;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import org.openecomp.core.zusammen.plugin.dao.impl.CassandraElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.StructureElement;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+public class VspGeneralLoader {
+  public static Map<String, ElementEntity> load(SessionContext context,
+                                                Map<String, List<String>> vspItemVersionsMap) {
+    Map<String, ElementEntity> elementEntityMap = new HashMap<>();
+    System.setProperty("cassandra.dox.keystore", "zusammen_dox");
+    CassandraElementRepository cassandraElementRepository = new CassandraElementRepository();
+    for (Map.Entry<String, List<String>> entry : vspItemVersionsMap.entrySet()) {
+
+      for (String version : entry.getValue()) {
+
+        Optional<ElementEntity> result =
+            cassandraElementRepository.get(context, new ElementEntityContext(
+                    context.getUser().getUserName(),
+                    new Id(entry.getKey()),
+                    new Id(version)),
+                new ElementEntity(new Id(StructureElement.General.name())));
+        if (result.isPresent()) {
+          elementEntityMap.put(context.getUser().getUserName() + "_" + entry.getKey()
+              + "_" + version, result.get());
+        }
+      }
+    }
+
+    return elementEntityMap;
+  }
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspItemLoader.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspItemLoader.java
new file mode 100644
index 0000000..78b915c
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/loaders/zusammen/VspItemLoader.java
@@ -0,0 +1,4 @@
+package org.openecomp.core.tools.loaders.zusammen;
+
+public class VspItemLoader {
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/main/ZusammenMainTool.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/main/ZusammenMainTool.java
new file mode 100644
index 0000000..7bc4bb2
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/main/ZusammenMainTool.java
@@ -0,0 +1,76 @@
+package org.openecomp.core.tools.main;
+
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.UserInfo;
+import org.openecomp.core.tools.Commands.ResetOldVersion;
+import org.openecomp.core.tools.util.ToolsUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+
+import java.time.Duration;
+import java.time.Instant;
+
+import static org.openecomp.core.tools.util.Utils.printMessage;
+
+public class ZusammenMainTool {
+
+  private static final String GLOBAL_USER = "GLOBAL_USER";
+  private static Logger logger = LoggerFactory.getLogger(ZusammenMainTool.class);
+  private static int status = 0;
+
+  public static void main(String[] args) {
+
+    String command = ToolsUtil.getParam("c",args);
+    if(command == null){
+      printMessage(logger,
+          "parameter -c is mandatory. script usage: zusammenMainTool.sh -c {command name} " +
+              "[additional arguments depending on the command] ");
+      System.exit(-1);
+    }
+    Instant startTime = Instant.now();
+
+    SessionContext context = new SessionContext();
+    context.setUser(new UserInfo(GLOBAL_USER));
+    context.setTenant("dox");
+
+
+    switch (COMMANDS.valueOf(command)){
+      case RESET_OLD_VERSION:
+        ResetOldVersion.reset(context,ToolsUtil.getParam("v",args));
+        break;
+      case EXPORT:
+        break;
+      case IMPORT:
+        break;
+
+    }
+
+    Instant stopTime = Instant.now();
+    Duration duration = Duration.between(startTime, stopTime);
+    long minutesPart = duration.toMinutes();
+    long secondsPart = duration.minusMinutes(minutesPart).getSeconds();
+
+
+    printMessage(logger,
+        "Zusammen tools command:[] finished . Total run time was : " + minutesPart + ":" +
+            secondsPart
+            + " minutes");
+    System.exit(status);
+
+  }
+
+  private enum COMMANDS{
+
+
+    RESET_OLD_VERSION("reset-old-version"),
+    EXPORT("export"),
+    IMPORT("import");
+
+    COMMANDS(String command) {
+      this.command  = command;
+    }
+
+    private String command;
+  }
+
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/store/ElementHandler.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/store/ElementHandler.java
new file mode 100644
index 0000000..2690130
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/store/ElementHandler.java
@@ -0,0 +1,26 @@
+package org.openecomp.core.tools.store;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import org.openecomp.core.zusammen.plugin.dao.impl.CassandraElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+public class ElementHandler {
+
+  private static final String GLOBAL_USER = "GLOBAL_USER";
+
+  public static void update(SessionContext context,
+
+                            String itemId, String versionId,
+                            ElementEntity elementEntity) {
+
+    ElementEntityContext elementContext;
+    elementContext = new ElementEntityContext(GLOBAL_USER, new Id(itemId),
+        new Id(versionId));
+    CassandraElementRepository cassandraElementRepository = new CassandraElementRepository();
+    cassandraElementRepository.update(context, elementContext, elementEntity);
+
+  }
+}
+
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/ToolsUtil.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/ToolsUtil.java
new file mode 100644
index 0000000..e2c80f0
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/ToolsUtil.java
@@ -0,0 +1,14 @@
+package org.openecomp.core.tools.util;
+
+public class ToolsUtil {
+
+  public static String getParam(String key, String[] args) {
+
+    for (int j = 0; j < args.length; j++) {
+      if (args[j].equals("-" + key)) {
+        return args[j + 1];
+      }
+    }
+    return null;
+  }
+}
diff --git a/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/Utils.java b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/Utils.java
new file mode 100644
index 0000000..d1621ad
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/Utils.java
@@ -0,0 +1,15 @@
+package org.openecomp.core.tools.util;
+
+import org.openecomp.sdc.logging.api.Logger;
+
+/**
+ * @author Avrahamg
+ * @since April 24, 2017
+ */
+public class Utils {
+  public static void printMessage(Logger logger, String message) {
+    System.out.println(message);
+    logger.debug(message);
+  }
+}
+
diff --git a/openecomp-be/tools/zusammen-tools/src/main/resources/logback.xml b/openecomp-be/tools/zusammen-tools/src/main/resources/logback.xml
new file mode 100644
index 0000000..b1c1335
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/resources/logback.xml
@@ -0,0 +1,282 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="5 seconds">
+
+    <property scope="system" name="ECOMP-component-name" value="ASDC" />
+    <property scope="system" name="ECOMP-subcomponent-name" value="ASDC-BE" />
+    <property file="${config.home}/catalog-be/configuration.yaml" />
+    <property scope="context" name="enable-all-log" value="false" />
+
+    <!--statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+    <include resource="asdc_debug_logback.xml"/-->
+
+    <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
+    <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
+    <property name="default-log-pattern"
+              value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{uuid}|%X{serviceInstanceID}|%thread||${ECOMP-subcomponent-name}|%X{userId}|%level|%X{alarmSeverity}|%X{localAddr}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
+
+    <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
+
+    <!-- All log -->
+    <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+        <then>
+            <appender name="ALL_ROLLING"
+                      class="ch.qos.logback.core.rolling.RollingFileAppender">
+                <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log
+                </file>
+
+                <rollingPolicy
+                        class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+                    <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
+                    </fileNamePattern>
+                    <minIndex>1</minIndex>
+                    <maxIndex>10</maxIndex>
+                </rollingPolicy>
+
+                <triggeringPolicy
+                        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+                    <maxFileSize>20MB</maxFileSize>
+                </triggeringPolicy>
+                <encoder>
+                    <pattern>${default-log-pattern}</pattern>
+                </encoder>
+            </appender>
+
+            <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
+                <appender-ref ref="ALL_ROLLING" />
+            </appender>
+        </then>
+    </if>
+
+    <!-- Error log -->
+    <appender name="ERROR_ROLLING"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/Error.log
+        </file>
+
+        <!-- Audit messages filter - deny audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>AUDIT_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+
+        <!-- Transaction messages filter - deny Transaction messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+
+        <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>INFO</level>
+        </filter>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/Error.log.%i
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>10</maxIndex>
+        </rollingPolicy>
+
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>20MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${default-log-pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- Debug log -->
+    <appender name="DEBUG_ROLLING"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log
+        </file>
+
+        <!-- No need to deny audit messages - they are INFO only, will be denied
+            anyway -->
+        <!-- Transaction messages filter - deny Transaction messages, there are
+            some DEBUG level messages among them -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+
+        <!-- accept DEBUG and TRACE level -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+                <expression>
+                    e.level.toInt() &lt;= DEBUG.toInt()
+                </expression>
+            </evaluator>
+            <OnMismatch>DENY</OnMismatch>
+            <OnMatch>NEUTRAL</OnMatch>
+        </filter>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>10</maxIndex>
+        </rollingPolicy>
+
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>20MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${default-log-pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- Debug log -->
+    <appender name="MIGRATION_DEBUG_ROLLING"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/cassandra2zusammen_migration_debug.log
+        </file>
+
+        <!-- No need to deny audit messages - they are INFO only, will be denied
+            anyway -->
+        <!-- Transaction messages filter - deny Transaction messages, there are
+            some DEBUG level messages among them -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>NEUTRAL</onMismatch>
+            <onMatch>DENY</onMatch>
+        </filter>
+
+        <!-- accept DEBUG and TRACE level -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+                <expression>
+                    e.level.toInt() &lt;= DEBUG.toInt()
+                </expression>
+            </evaluator>
+            <OnMismatch>DENY</OnMismatch>
+            <OnMatch>NEUTRAL</OnMatch>
+        </filter>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log.%i
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>10</maxIndex>
+        </rollingPolicy>
+
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>20MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${asdc-debug-log-pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- Audit log -->
+    <appender name="AUDIT_ROLLING"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log
+        </file>
+
+        <!-- Audit messages filter - accept audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>AUDIT_MARKER</marker>
+            </evaluator>
+            <onMismatch>DENY</onMismatch>
+            <onMatch>ACCEPT</onMatch>
+        </filter>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>10</maxIndex>
+        </rollingPolicy>
+
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>20MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${default-log-pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- SdncTransaction log -->
+    <appender name="TRANSACTION_ROLLING"
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log
+        </file>
+
+        <!-- Transaction messages filter - accept audit messages -->
+        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+            <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+                <marker>TRANSACTION_MARKER</marker>
+            </evaluator>
+            <onMismatch>DENY</onMismatch>
+            <onMatch>ACCEPT</onMatch>
+        </filter>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log.%i
+            </fileNamePattern>
+            <minIndex>1</minIndex>
+            <maxIndex>10</maxIndex>
+        </rollingPolicy>
+
+        <triggeringPolicy
+                class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+            <maxFileSize>20MB</maxFileSize>
+        </triggeringPolicy>
+        <encoder>
+            <pattern>${default-log-pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- Asynchronicity Configurations -->
+    <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="DEBUG_ROLLING" />
+    </appender>
+
+    <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="TRANSACTION_ROLLING" />
+    </appender>
+
+    <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
+        <appender-ref ref="ERROR_ROLLING" />
+    </appender>
+
+
+    <root level="INFO">
+        <appender-ref ref="ASYNC_ERROR" />
+        <appender-ref ref="ASYNC_DEBUG" />
+        <appender-ref ref="AUDIT_ROLLING" />
+        <appender-ref ref="ASYNC_TRANSACTION" />
+        <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+            <then>
+                <appender-ref ref="ALL_ROLLING" />
+            </then>
+        </if>
+    </root>
+
+    <logger name="org.openecomp.sdc" level="INFO" />
+
+    <logger name="org.openecomp.core" level="DEBUG" additivity="false">
+        <appender-ref ref="MIGRATION_DEBUG_ROLLING" />
+    </logger>
+</configuration>
+
+
diff --git a/openecomp-be/tools/zusammen-tools/src/main/resources/zusammenMainTool.sh b/openecomp-be/tools/zusammen-tools/src/main/resources/zusammenMainTool.sh
new file mode 100644
index 0000000..c274d84
--- /dev/null
+++ b/openecomp-be/tools/zusammen-tools/src/main/resources/zusammenMainTool.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+###########################################################################################################
+# script name - cassandra2zusammen.sh
+# run script - ./cassandra2zusammen.sh
+# This script migrates ASDC 1st class citizen entities and their sub-entities from Cassandra to
+# Zusammen.
+# This script should be run when upgrading from 1702 to 1707
+###########################################################################################################
+
+
+# change exist package and service templates in db
+java -Dlog.home=/apps/jetty/base/be/logs -Dconfiguration.yaml=/apps/jetty/base/be/config/catalog-be/configuration.yaml  -jar openecomp-zusammen-tools-1.0-SNAPSHOT.jar org.openecomp.core.tools.main.ZusammenMainTool $1 $2 $3 $4
+
+STATUS="${?}" echo "${STATUS}" echo "All log messages for the zusammenMainTool
+migration process are in /apps/jetty/base/be/logs/ASDC/ASDC-BE/zusammen_tool_debug.log"