About Spelling Correction and Did You Mean

The Oracle Endeca Server supports two complementary forms of Spelling Correction — automatic spelling correction for record search and value search, and explicit spelling suggestions for record search ("Did You Mean?").

The Automatic Spelling Correction and Did You Mean features of the Oracle Endeca Server enable search queries to return expected results when the spelling used in query terms does not match the spelling used in the result text (that is, when the user misspells search terms).

Either or both features can be used in a single application, and all are supported by the same underlying spelling engine and Spelling Correction module.

Automatic Spelling Correction operates by computing alternate spellings for user query terms, evaluating the likelihood that these alternate spellings are the best interpretation, and then using the best alternate spell-corrected query forms to return extra search results. For example, a user might search for records containing the text Abrham Lincoln. With spelling correction enabled, the Oracle Endeca Server returns the expected results: those containing the text Abraham Lincoln.

Did You Mean (DYM) functionality allows an application to provide the user with explicit alternative suggestions for a keyword search. For example, assume that a user gets six results when searching for valle in a data set. The terms valley and vale, however, are much more prevalent in that data set. When the DYM feature is enabled, the Oracle Endeca Server will respond with the six results for valle, but will also suggest that valley or vale may be what the end-user actually intended. If multiple suggestions are returned, they will be sorted and presented according to the closeness of the match.

The behavior of spelling correction features is application-aware, because the spelling dictionary for a given data set is derived directly from the indexed source text, populated with the words found in all searchable values and attributes. The Oracle Endeca Server returns spelling-corrected results as normal search results, for both value search and record search operations.

For example, in a set of records containing computer equipment, a search for graphi might spell-correct to graphics. In a different data set for sporting equipment, the same search might spell-correct to graphite.