1. A method comprising: receiving an initial query term set; based on the initial query term set determining a list of item categories that each represent a category of items available on a network; causing the list of item categories to be presented in a user interface to a user; receiving from the user, a selection of an item category from the list of item categories determined based on the initial query term set; performing phrase recognition on the initial query term set to determine recognized phrases; determining a synonym for each of the recognized phrases based on the user selected item category, the synonym comprising a plurality of words; causing the determined synonyms to be presented in the user interface to the user along with corresponding first selectors and corresponding second selectors, each of the first selectors being operable to select the corresponding synonym, each of the second selectors being operable to select a search option for the corresponding synonym, each second selector including: a first search option operable to cause the corresponding synonym to be matched whenever the plurality of words of the synonym are matched without regard to order, a second search option operable to cause the corresponding synonym to be matched whenever at least one of the plurality of words of the synonym is matched, and a third search option operable to cause the corresponding synonym to be matched whenever the plurality of words of the synonym are matched in order; receiving, from the user, a selection of a subset of the presented synonyms selected by the user from the determined synonyms, the selection indicating corresponding search options selected by the user; and determining, using one or more processors, results within the user selected item category that match the initial query term set and the selected subset of synonyms, the results being based on the selected search options for the selected subset of synonyms.