Back when I was getting my undergraduate degree at Arizona State, I was responsible for writing a Thesis my senior year to satisfy the requirements of graduating from the Barrett College. I recently dug it out of an old file and though it'd be fun to post it...
Titled NetSynthesis: User-Initiated Synthesis of Biological Networks, the project was (to modern standards) a basic AJAX application that allows users to map protein and genes based off a given query. After making a search, the system would return a "Did you mean..." type of result. After the user selected the keywords to actually search for, a full search would be conducted.
Here's the abstract. The full paper can be downloaded here.
The NetSynthesis prototype includes a Query Expander, which is designed to provide a list of related terms for the keywords specified in a query. User a combination of synonyms, terms found in definitions of MeSH terms, ancestors and descendents, NetSynthesis provides a substantial list of alternative keywords for a user to choose from before submitting the query to the processing modules. Once the user selects which keyword to include in the final query, results are then displayed to the user. In this fashion, results may be viewed by the user as the system continues to look for more results. This new interface can benefit biomedical researchers in conducting their research.