A method of searching and matching non-phonetic or ideogrammatic input
data to stored data, including the steps of receiving input data
comprising a search string having a plurality of elements, converting a
subset of the elements into a set of terms, generating an optimized
plurality of keys from the set of terms, retrieving stored data based on
the optimized keys corresponding to most likely candidates for match, and
selecting a best match from the plurality of candidates. At least some of
the ideogrammatic elements form part of an ideogrammatic writing system.
The method may also include dividing the search string into a plurality
of overlapping sub-segments and identifying sub-segments having inferred
semantic meaning as well as sub-segments having no semantic meaning in
the ideogrammatic writing system, and using the various sub-segments to
generate the optimized keys.