Intelligent searching

We have plans to create a "Knowledge Base" application, but I'm not sure how we are going to satisfy the most important requirement: robust searching functionality. They want to able to enter a search term and have it return results for other forms of the search term (pluralization, misspelling) and related terms as well (for instance, "cable" would also return results for "wire").

Has anyone else dealt with users who are asking for Google-like behavior in their Appian searches? What solutions have you come up with?

OriginalPostID-244803

  Discussion posts and replies are publicly visible

Parents
  • What you are looking for is the combination of two things: soundex and Levenshtein distance. Soundex is supported out of the box in Appian, but Levenshtein distance is not. There are readily available libraries in Java for calculating the Levenshtein distance, so a custom plug-in is the most straightforward approach. A co-worker for a previous project built a plugin to return true if a 80% Levenshtein distance match is found or a soundex match is found, and he did it in a small amount of time. It will match many misspellings or pluralizations. Good luck.
Reply
  • What you are looking for is the combination of two things: soundex and Levenshtein distance. Soundex is supported out of the box in Appian, but Levenshtein distance is not. There are readily available libraries in Java for calculating the Levenshtein distance, so a custom plug-in is the most straightforward approach. A co-worker for a previous project built a plugin to return true if a 80% Levenshtein distance match is found or a soundex match is found, and he did it in a small amount of time. It will match many misspellings or pluralizations. Good luck.
Children
No Data