Metaphone - Double Metaphone

The Double Metaphone phonetic encoding algorithm is the second generation of this algorithm. Its implementation was described in the June 2000 issue of C/C++ Users Journal. It makes a number of fundamental design improvements over the original Metaphone algorithm.

It is called "Double" because it can return both a primary and a secondary code for a string; this accounts for some ambiguous cases as well as for multiple variants of surnames with common ancestry. For example, encoding the name "Smith" yields a primary code of SM0 and a secondary code of XMT, while the name "Schmidt" yields a primary code of XMT and a secondary code of SMT--both have XMT in common.

Double Metaphone tries to account for myriad irregularities in English of Slavic, Germanic, Celtic, Greek, French, Italian, Spanish, Chinese, and other origin. Thus it uses a much more complex ruleset for coding than its predecessor; for example, it tests for approximately 100 different contexts of the use of the letter C alone.

Read more about this topic:  Metaphone

Famous quotes containing the word double:

    One key, one solution to the mysteries of the human condition, one solution to the old knots of fate, freedom, and foreknowledge, exists, the propounding, namely, of the double consciousness. A man must ride alternately on the horses of his private and public nature, as the equestrians in the circus throw themselves nimbly from horse to horse, or plant one foot on the back of one, and the other foot on the back of the other.
    Ralph Waldo Emerson (1803–1882)