13. The method of claim 1 for searching a structured data table T with the query Q={k 1 ; k 2 ; : : : ; k l }, where an edit distance between two strings s 1 and s 2 , denoted by ed(s 1 , s 2 ), is the minimum number of edit operations of single characters needed to transform the first string so to the second string s 2 , and an edit-distance threshold Î´, for 1â‰¦iâ‰¦l, where a predicted-word set W k j for k i is {w|âˆƒwâ€²â‰¦w, wâˆˆW, ed(k i ,wâ€²)â‰¦Î´), where a predicted-record set R Q is {r|râˆˆR, âˆ€1â‰¦l, âˆƒ w i âˆˆW i , w l appears in r} comprising determining the top-t predicted records in R Q ranked by their relevancy to Q with the edit-distance threshold Î´.
14. The method of claim 13 further comprising: inputting a keyword k, storing a set of active nodes Ï† k ={[n, Î¾ n ]}, where n is an active node for k, and Î¾ n =ed(k; n)â‰¦Î´, inputting one more letter after k, and finding only the descendants of the active nodes of k as active nodes of the new query which comprises initializing an active-node set for an empty keyword Îµ, i.e., Ï† Îµ ={[n; Î¾ n ]|Î¾ n =|n|â‰¦Î´}, namely including all trie nodes n whose corresponding string has a length |n| within the edit-distance threshold Î´, inputting a query string c 1 c 2 : : : c x letter by letter as follows: after inputting in a prefix query p i =c 1 c 2 : : : c i (iâ‰¦x), storing an active-node set Ï† p for p i , when inputting a new character c x+1 and submitting a new query p x+1 , incrementally determining the active-node set 0 p x+1 for p x+1 by using 0 p x as follows: for each [n; Î¾ n ]in 0 p x , we consider whether the descendants of n are active nodes for p x+1 , for the node n, if Î¾ n +1<Î´, then n is an active node for p x+1 , then storing [n; Î¾ n +1] into 0 p x+1 for each child n c of node n, (1) the child node n c has a character different from c x+1 , ed(n s ; p x+1 )â‰¦ed(n; p x )+1=Î¾ n +1, if Î¾ n +1â‰¦Â·Î´, then n s is an active node for the new string, then storing [n s ; Î¾ n +1] into 0 p x+1 , or (2) the child node n c has a label c x+1 is denoted as a matching node n m , ed(n m ; p x+1 )â‰¦Â·ed(n; p x )=Î¾ n â‰¦Î´, so that n m is an active node of the new string, then storing [n m ; Î¾ n ] into 0 p x+1 , but if the distance for the node n m is smaller than Î´, i.e., Î¾ n <Î´, then for each n m 's descendant d that is at most Î´âˆ’Î¾ n letters away from n m , adding [d; Î¾ d ] to the active-node set for the new string p x+1 , where Î¾ d =Î¾ n +|d|âˆ’|n m |.