NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin
Wiki Markup
{scrollbar:icons=false}
Panel
titleContents of this Page
Table of Contents
minLevel2

Double Metaphone Implementation Details

Search with the Lucene query syntax, using a 'sounds like' algorithm.

Algorithm:

The Double Metaphone search has the following characteristics:

  • This search is case in-sensitive. 
  • It searches on the double metaphone property value.   
  • Parsing is done with the following analyzer:

    • dm_propertyValue - Uses our custom double metaphone analyzer.  This has the following filters:

      • LowerCaseFilter - for setting to lowercase
      • StopFilter - to remove stop words (the, a, etc.) from the search
      • DoubleMetaphoneFilter - for testing double metaphone sounds

Example of use:

The following examples are based on the Automobiles coding scheme.

Example 1:

Search string: Automobeel

Lucene query: dm_propertyValue:ATMP

Result: 1 result

  • entity code: A0001
  • entity description: Automobile


Example 2:
Search string: kar truk

Lucene query: +dm_propertyValue:KR +dm_propertyValue:TRK

Result: 0 results

  • entity code:
  • entity description:

Associated JUnits:

Junits can be found here: https://github.com/lexevs/lexevs/blob/master/lbTest/src/test/java/org/LexGrid/LexBIG/Impl/function/query/lucene/searchAlgorithms/DoubleMetaphoneSearch.java