Choose the Right Algorithm for the Domain Type

Created by Alexandru Sirbu, Modified on Thu, 26 Mar at 2:52 PM by Alexandru Sirbu

Problem Overview


HEDDA.IO uses algorithms to find fuzzy matches when an incoming value does not exactly match any Member in a Domain. Picking the wrong algorithm either produces false matches or misses valid ones. The correct choice depends entirely on the nature of the data.


Solution


When processing a row, HEDDA.IO checks the value in each Domain column against the list of defined Members. The first check is always an exact match - if the value equals a Main Member or one of its Synonyms directly, that match is used and the algorithm is never invoked.


Only when no exact match is found does HEDDA.IO turn to the Domain's configured algorithm and try again. The algorithm defines how loosely or strictly values are compared. If the algorithm finds a match, the value is replaced with the corresponding Main Member in all subsequent processing steps.


Choosing the Right Algorithm


Phonetic algorithms (e.g., Cologne Phonetic, Double Metaphone): Use these for names, places, and product descriptions where different people might spell the same thing differently but the pronunciation is similar. For example, 'Mueller' and 'Müller', or 'Schmidt' and 'Schmitt', will match under a phonetic algorithm.


Distance algorithms (e.g., Levenshtein Distance, Levenshtein-Damerau): Use these for short codes, SKUs, or reference identifiers where a small number of character insertions, deletions, or transpositions are plausible. Levenshtein Distance will successfully match 'PROD-1234' against 'PRD-1234' or 'PROD-12345'.


Keyboard distance algorithms: These algorithms account for typing errors based on physical key proximity on a keyboard. Useful for manual data entry fields where adjacent-key typos are common.


Exact Match (no algorithm): The only correct choice for telephone numbers, IBAN codes, postal codes, or any identifier where a single wrong character produces a completely different - and valid - entity elsewhere.


Configuration

  1. Open the Knowledge Base and switch to Edit Version mode
  2. Go to the Domains tab
  3. Select the Domain and click Edit in the Domain Info Panel
  4. Enable Member search, which is available for string-type Domains only
  5. Select the appropriate algorithm
  6. Save the Domain


The Algorithm field does not appear for number, date, or boolean Domains - those types always use exact matching by their nature. If you need fuzzy matching on a numeric identifier, consider storing it as a string Domain instead.



If you have any further questions, please feel free to Contact Us.

You can also refer to the HEDDA.IO End User Documentation.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article