Patent ID: 7107263

Claim:
A method of searching a database for a query comprising the steps of: (a) providing a database of strings of characters; (b) providing a query string; (c) identifying polygraphs that occur in said query string and also in said database strings; (d) providing a match cost to each said identified polygraph, and weighting the polygraphs match costs in inverse proportion to the length of the polygraph; (e) positioning the query string relative to each database string; (f) matching polygraph occurrences in the query string with those in each database string, the cost of matching providing a numerical indication of the similarity between said query string and each said database string, and the match cost attenuating the effects of polygraph inclusion on the matching step; (g) realigning said query string to reduce the match cost by examining edges present in a matching solution; (h) repeating said matching step (f) and said realigning step (g) a predetermined number of times or until the match cost fails to improve; (i) repeating the steps (c) to (h) above for each database string for the purpose of identifying those database strings most similar to said query string; (j) computing a match strength of each character in each database string based upon the match cost of each matching polygraph that includes that character; and, (k) displaying the database strings most similar to the query string using highlighting techniques to visually represent relative match strengths of database characters.