Patent Document ID: 8234259
Application ID: 12437754

Base Claim:
1. A computerized method of adjudicating text against a policy comprising: receiving one or more system policies comprising one or more prohibited words and a first hit value corresponding to each prohibited word, the first hit value indicating the significance of the prohibited word; creating a system datastructure for each received system policy, each system datastructure further comprising: a hash table comprising a plurality of linked lists corresponding the letters of the alphabet; and a head linked list operable to store one or more found prohibited words; receiving an input message comprising text to be adjudicated; selecting a system policy from the one or more received system policies based on the input message; and determining whether a prohibited word is present in the text to be adjudicated by processing the text to be adjudicated and the system datastructure corresponding to the selected system policy, wherein the one or more system policies further comprise a group of associated prohibited words, the group comprising: a threshold value corresponding to the group of associated prohibited words; an associated prohibited word, the associated prohibited word being associated to one of the one or more prohibited words; a second hit value corresponding to the associated prohibited word; and proximity value corresponding to the associated prohibited word.

---

Claim 10:
10. The computerized method of adjudicating text against a policy of claim 1 , wherein the determining whether a prohibited word is present in the text to be adjudicated by processing the text to be adjudicated and the system datastructure corresponding to the selected system policy comprises: creating a temporary datastructure by duplicating the system datastructure corresponding to the selected system policy; selecting a group of words from the text to be adjudicated, the number of words in the group corresponding to a number of processing threads of a processor; simultaneously processing the selected group of words, the processing further comprising: spawning a processor thread for each word in the selected groups of words; identifying a linked list in the temporary datastructure that corresponds to the first letter of each word in the group of words; searching the identified linked list for the word; recording the word in the head linked list of the temporary datastructure if the word is found in the identified linked list; and repeating the selecting a group of words and simultaneously processing the selected group of words until every word in the text to be adjudicated has been processed.