Preparing names for searching

Name objects contain information for searching or comparison of names. Category data, parsing data, and culture data are key elements that control the behavior of searching.

Names must be preprocessed for searching with Global Name Management. Preprocessing involves converting names written in non-Latin scripts to Latin characters (transliteration), determining whether names are Personal or Organization (categorization), separated into elements that can be compared (parsing), and examined to determine the appropriate culture data to use (classification).

All of these preprocessing steps may be performed at separate times by separate linguistic tools, but the analzeForSearch() method performs all of these functions in a single method call. analyzeForSearch() produces one or more QueryName objects which can be used for searching or comparison.

QueryName objects are derived from Name objects, with an additional parse confidence value. QueryName objects are returned in a list, ordered by descending confidence, so the first objects in the list are the most likely to return desirable matches.

The createName() method is available for generating Name objects directly, but this method requires more preprocessing data than analyzeForSearch(). The requirements of a search application, along with the data available, dictate how name data should be preprocessed.