createIfHasValue will produces empty value if argument is not empty; ResultList.SUPPRESS otherwise.
Source message type and target message type:

Source data and target data:
If source message col1 do not have value or is with blank space, do not create node ‘row’, and col1 will not be copied to target message.

mapping for field row:
If is value ‘A’,’C’,’E’, created empty string “”. Empty string will create node “row”
If is “”(empty string) or ” “(a blank space), become SUPPRESS. SUPPRESS will not create node “row”

mapping for field col1: 1 to 1 direct mapping.

UDFNodePool – createIfHasValue

Very nice and helpful UDF.