A
search engine implements a multi-level search scheme. A first level involves performing a
keyword search based on character matching. A second level, performed only if the first level yields no results, is a
keyword search based on phonetic representations of a search
phrase and of the keywords. A third level, performed only if the first and second levels yield no results, is a rough matching search. The keywords or keyword phrases are specified in a
phrase table. Each entry of the
phrase table specifies a keyword phrase, its
phonetic representation, a topic URL, and an action that is to be performed in conjunction with the topic URL. There are a plurality of defined actions, having different priorities. If multiple keyword phrases are found in the multi-level search, the one having the action with the highest priority is initiated. If there is a tie for the highest priority, the results are listed in a results page, regardless of the actions associated with the matched entries. Different actions can be specified in the phrase table entries, corresponding to different levels of the multi-level search scheme that were required to discover a matching entry.