10. A method comprising: (a) receiving an input string, the input string comprising a plurality of words comprising an input word group corresponding to an invented part of speech; (b) calculating via a computer a set of part of speech scores for the input string, wherein calculating the set of part of speech scores comprises, for each comparison word group from a set of word groups corresponding to the invented part of speech from a dictionary list stored in advance on a computer readable medium, wherein the dictionary list is organized according to a hierarchy comprising a plurality of classes in which each class from the plurality of classes is associated a plurality of word groups corresponding to the invented part of speech, calculating a measure of similarity between: (i) the input word group corresponding to the invented part of speech; and (ii) the comparison word group; wherein the measure of similarity is set as a maximum measure of similarity if the following conditions are true: (1) each word in the input word group is also a word in the comparison word group; (2) there exists some nonzero number, i, such that the last i, words in the input word group and the last i words in the comparison word group are the same; (3) the comparison word group is associated with a class from the plurality of classes which is also associated with a second word group corresponding to the invented part of speech; (4) the last i words in the input word group are the same as the second word group; (c) determining a result set comprising a set of records retrieved from a database, wherein each record from the result set comprises an identifying word group corresponding to the invented part of speech; and (d) for each record in a subset of records from the result set, determining via the computer a match score based on a relevant part of speech score from the previously calculated set of part of speech scores, wherein the relevant part of speech score corresponds to the identifying word group from the record in the subset of records for which the match score is being determined; and wherein the cardinality of the subset of records is less than or equal to the cardinality of the set of records from the result set.
10. A method comprising: (a) receiving an input string, the input string comprising a plurality of words comprising an input word group corresponding to an invented part of speech; (b) calculating via a computer a set of part of speech scores for the input string, wherein calculating the set of part of speech scores comprises, for each comparison word group from a set of word groups corresponding to the invented part of speech from a dictionary list stored in advance on a computer readable medium, wherein the dictionary list is organized according to a hierarchy comprising a plurality of classes in which each class from the plurality of classes is associated a plurality of word groups corresponding to the invented part of speech, calculating a measure of similarity between: (i) the input word group corresponding to the invented part of speech; and (ii) the comparison word group; wherein the measure of similarity is set as a maximum measure of similarity if the following conditions are true: (1) each word in the input word group is also a word in the comparison word group; (2) there exists some nonzero number, i, such that the last i, words in the input word group and the last i words in the comparison word group are the same; (3) the comparison word group is associated with a class from the plurality of classes which is also associated with a second word group corresponding to the invented part of speech; (4) the last i words in the input word group are the same as the second word group; (c) determining a result set comprising a set of records retrieved from a database, wherein each record from the result set comprises an identifying word group corresponding to the invented part of speech; and (d) for each record in a subset of records from the result set, determining via the computer a match score based on a relevant part of speech score from the previously calculated set of part of speech scores, wherein the relevant part of speech score corresponds to the identifying word group from the record in the subset of records for which the match score is being determined; and wherein the cardinality of the subset of records is less than or equal to the cardinality of the set of records from the result set. 15. The method of claim 10 , wherein calculating via the computer the set of part of speech scores for the input string comprises, for each word group from the set of word groups from the dictionary list, calculating a cosine similarity measure between; (a) a first word group corresponding to the input word group corresponding to the invented part of speech; and (b) a second word group corresponding to the word group from the set of word groups from the dictionary list; wherein the cosine similarity measure is weighted by giving exponentially increasing the weight given to the similarity of words as those words approach the end of the first word group and the second word group.