List<RequirementNodeFilterPropertyDataDefinition> properties = ciNodeFilterDataDefinition.getProperties()
                 .getListToscaDataDefinition();
             if (!properties.isEmpty()) {
+                final Component component;
+                try {
+                    component = getComponent(componentId);
+                } catch (BusinessLogicException e) {
+                    throw new ComponentException(e.getResponseFormat());
+                }
                 properties.forEach(property -> {
+                    String propertyType = getComponentInstancePropertyType(component, componentInstanceId, property.getName());
                     RequirementNodeFilterPropertyDataDefinition requirementNodeFilterPropertyDataDefinition =
                         getRequirementNodeFilterPropertyDataDefinition(property);
+                    requirementNodeFilterPropertyDataDefinition.setType(propertyType);
                     Either<CINodeFilterDataDefinition, StorageOperationStatus> nodeFilterProperty = nodeFilterOperation
                         .addNewProperty(componentId, componentInstanceId, nodeFilter.left().value(), requirementNodeFilterPropertyDataDefinition);
                     if (nodeFilterProperty.isRight()) {
 
     private List<String> getNodeFilterConstraints(String name, List<String> value) {
         List<String> constraints = new ArrayList<>();
-        String values = value.get(0).split("\n")[0];
-        constraints.add(name + ": {" + values + "}");
+        constraints.add(name + ":\n " + value.get(0));
         return constraints;
     }
 
 
         nodeFilterMap.put(componentInstanceId, filter);
 
         when(nodeFilterOperation.createNodeFilter(componentId, componentInstanceId)).thenReturn(Either.left(ciNodeFilterDataDefinition));
+        when(toscaOperationFacade.getToscaElement(componentId)).thenReturn(Either.left(resource));
         when(nodeFilterOperation.addNewProperty(anyString(), anyString(), any(CINodeFilterDataDefinition.class),
             any(RequirementNodeFilterPropertyDataDefinition.class))).thenReturn(Either.left(ciNodeFilterDataDefinition));
 
         nodeFilterMap.put(componentInstanceId, filter);
 
         when(nodeFilterOperation.createNodeFilter(componentId, componentInstanceId)).thenReturn(Either.left(ciNodeFilterDataDefinition));
+        when(toscaOperationFacade.getToscaElement(componentId)).thenReturn(Either.left(resource));
         when(nodeFilterOperation.addNewProperty(anyString(), anyString(), any(CINodeFilterDataDefinition.class),
             any(RequirementNodeFilterPropertyDataDefinition.class))).thenReturn(Either.right(StorageOperationStatus.GENERAL_ERROR));