Skip to main content
Question

FeatureMerger and FeatureJoiner do not match visually identical values


tb09114
Supporter
Forum|alt.badge.img+22

I need to use FeatureMerger or FeatureJoiner based on two varchar(200) attributes.

Visually those values do match. No white spaces trailing anywhere, the strings are the same, yet neither FeatureMerger nor FeatureJoiner are able to combine the data.

 

settings for FeatureJoiner

As an example from the the Feature Information pane
 

right attribute to join on
left attribute to join on

The join/merge is supposed to happen within a custom transformer, but I also tried it in the main workflow, where I received the same results.

 

FeatureMerger is in version 21, and

FeatureJoiner is in version 1001.

 

Any suggestion on how I can identify the culprit and get these features to join/merge?

8 replies

redgeographics
Celebrity
Forum|alt.badge.img+47

They look the same indeed, hmmm…

Could it be a difference in encoding perhaps? Wild guess but you never know…

In the FeatureMerger you can access the Text Editor and use functions, if you try @Uppercase() with both of them, maybe that’ll work.

 


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • March 12, 2025

Have you checked for non-printing characters?

 

Zero width spaces are often the culprit in these sorts of scenarios in my experience

 

 


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • March 12, 2025

Regular expression for a zero width space

[\x{200B}]

Another thing to try is using a TextEncoder and set to URL (Percent Encoding) to look at whether the encoded text still looks the same

 

Two things that look the same, aren’t actually the same

 


tb09114
Supporter
Forum|alt.badge.img+22
  • Author
  • Supporter
  • March 12, 2025

Thank you ​@redgeographics I did try the Uppercase method but sadly that didn’t change the results.
@ebygomm since your proposed methods included the encoding issue Hans suggested before I went with the TextEncoder set to URL (PercentEncoding)… nothing 😣. Also the search for zero width spaces returned no occurence of such things.


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • March 12, 2025

If you test for that value on both supplier and requestor do you get features passing?


tb09114
Supporter
Forum|alt.badge.img+22
  • Author
  • Supporter
  • March 12, 2025

Yes, I tested both the supplier and the requestor but the FeatureMerger was not capable to merge them.

But, there is something fishy here. When I use the ConvertEncoding string function in the text editor and convert the seemingly identical values to fme-binary then value for bassin are:

Supplier: 62617373696E

Requestor: 666D655F666561747572655F74797065
 


ebygomm
Influencer
Forum|alt.badge.img+31
  • Influencer
  • March 12, 2025

Your requestor is the value fme_feature_type based on that, not the value bassin


tb09114
Supporter
Forum|alt.badge.img+22
  • Author
  • Supporter
  • March 12, 2025

@ebygomm you are so right! I corrected the missing value reference in the string function and now I can see the value for bassin is on both occations (supplier/requestor): 62617373696E

However, the FeatureMerger still cannot make a single match.


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings