SNOMED Documentation Search


 Other Documents
Skip to end of metadata
Go to start of metadata

Current Version - Under Revision

Note

This page contains some advice on generating simple index tables. However, please note the wide availability of open source search tools and search capabilities built into databases makes this advice less relevant than it was when originally issued.

The idea of a single keyword index, is to provide a pointer from each word used in any term, to the descriptions in which that Keyword is used. This support a search capability, which is independent of the order in which words appear in a description.

Note that some words that are used in description are linking words, which are unlikely to be in the target of a search. These words can be excluded from a keyword index.

Generating a single keyword index

Entries may be added to the single keyword index table by following the method outlined below.

For each description, parse the text of the term :

  • To avoid inappropriate case mismatches, convert all characters to the same case.
  • Extract words by breaking at spaces, punctuation marks, and brackets.
  • For each word:
    • If the word is not in a list of excluded words add a row to keyword index table.

Example: Generation of keywords for a sample Description

Table 6.1.1-5: Sample Description

Convert all characters to the same case.

22565018 |pyrogallol 1,2-oxygenase| -> "PYROGALLOL 1,2-OXYGENASE"

Extract words by breaking at spaces, punctuation marks, and brackets.

"PYROGALLOL 1,2-OXYGENASE" -> '

(1) = "PYROGALLOL"

(2) = "1"

(3) = "2"

(4) = "OXYGENASE"

For each word ...

If the word is not in a list of excluded words, and length of word > 1, and first character is not numeric:

  • Add a row to the keyword index table pointing from that word to the relevant description or concept identifier.

Options

  • Keyword length limits - It may be useful to limit the length or the key to a maximum number of characters as shown in the tables below

Index target - An index pointing to a description Identifier is useful as it allows the matching description to be displayed. However, an index pointing to the concept identif concept Identifier may make it easier to exclude multiple matching terms that point to the same concept.

Table 6.1.1-5: Single Word Index of Descriptions (limited to 8 characters in length)

KeyWord

PYROGALL

22565018

OXYGENAS

22565018

Table 6.1.1-5: Single Word Index of Concepts (limited to 8 characters in length)

Search using the single keyword index

A single keyword search may be conducted as follows:

  • The user-typed search string is converted to consistent case;
  • The string is parsed, breaking at spaces and punctuation characters;
  • One word is selected from the parsed word list to use as a look-up on the single keyword index;
  • Lookup on the single keyword index may be "exact" or "starts with," depending on wild card conventions used in the search string;
    • Ideally this index search should be use the keyword with least matches in the index;
  • In the resulting list of descriptions containing matches look for matches with the other words in the search string.

Example: Search using single keyword index

The user searches for "Hip* replacement*" (where "*" represents the wild card for any number of extra characters).

  • The user-typed search string is converted to consistent case.

"Hip* replacement" -> "HIP* REPLACEMENT*"

  • The string is parsed, breaking at spaces and punctuation characters.

"HIP* REPLACEMENT*" ->

(1) "HIP*"

(2) "REPLACEMENT*"

Look up "HIP" on the single Keyword index using "starts with" query .

Table 6.1.1-5: Example results for a Search for "hip"

Descriptions in the search results are converted to consistent case and screened, to see if they contain any words starting with "REPLACEMENT" - only those terms that do are included in the final search results.
Using a Dual Key index is more efficient as the same search finds only 11 matches.

Table 6.1.1-5: Sample results of a search for "hip replacement" using DualKey "HIPREP"


Feedback