1. A method executed by a data processing apparatus, comprising: detecting a query refinement indication associated with a first search query displayed in a search field in a user interface, the first search query comprising two or more query tokens, and the query refinement indication being an indication of a user selection, the user selection being in the search field and being a selection of at least one and less than all of the query tokens; detecting a context associated with the query refinement indication based on the selected query tokens and one or more unselected query tokens of the query; identifying one or more refinements to the first search query based upon the query refinement indication and the context associated with the query refinement indication, the one or more refinements being refinements to the selected query tokens of the first search query; and ordering the one or more refinements based on recorded votes on each of the one or more refinements, the votes corresponding to each word break in a region of overlap between the query tokens in the search query and refinement tokens in the refinement; and providing the refinements according to the order of the refinements for display in the user interface.
1. A method executed by a data processing apparatus, comprising: detecting a query refinement indication associated with a first search query displayed in a search field in a user interface, the first search query comprising two or more query tokens, and the query refinement indication being an indication of a user selection, the user selection being in the search field and being a selection of at least one and less than all of the query tokens; detecting a context associated with the query refinement indication based on the selected query tokens and one or more unselected query tokens of the query; identifying one or more refinements to the first search query based upon the query refinement indication and the context associated with the query refinement indication, the one or more refinements being refinements to the selected query tokens of the first search query; and ordering the one or more refinements based on recorded votes on each of the one or more refinements, the votes corresponding to each word break in a region of overlap between the query tokens in the search query and refinement tokens in the refinement; and providing the refinements according to the order of the refinements for display in the user interface. 6. The method of claim 1 , where ordering the one or more refinements comprises: comparing each of the one or more refinements to the search query, including determining whether the refinement includes a common prefix or common suffix with the search query.