1. A computer-implemented method for use with a corpus of items, the method comprising: specifying one or more enabling relationships, which map enabling sets of one or more enabling attribute-value pairs to respective enableable attributes; receiving a search query from a user, wherein the search query comprises one or more search query attribute value pairs; responsively to the search query: designating a current state that comprises one or more current-state attribute-value pairs that correspond to the one or more search query attribute value pairs, and generating a result set containing one or more of the items of the corpus that correspond to the one or more current-state attribute-value pairs; determining, based on the one or more enabling relationships specified, that all of the enabling attribute-value pairs of one of the enabling relationships are included in the one or more current-state attribute-value pairs of the current state; identifying, in response to the determining that all of the enabling attribute-value pairs of one of the enabling relationships are included in the one or more current-state attribute-value pairs of the current state, that an enableable attribute of the one of the enabling relationships is enabled; determining that a populated attribute-value pair exists, wherein the populated attribute-value pair comprises the enabled attribute and a value therefor, and which, when added to the search query, results in an extended query that is satisfied by at least one of the items in the corpus; identifying at least one extended state that comprises the current state and the populated attribute-value pair; identifying a sub-enabled attribute that is an enableable attribute of one of the enabling relationships enabled by the extended state because the extended-state attribute-value pairs include all of the enabling attribute-value pairs of the one of the enabling relationships; determining whether a sub-search query comprises the search query and the populated attribute-value pair; generating, responsive to determining that a sub-search query comprises the search query and the populated attribute-value pair, a sub-result set containing one or more of the items of the corpus; identifying a populated extended-state attribute-value pair that comprises the sub-enabled attribute and a value therefor, and which, when added to the sub-search query, results in an extended sub-search query that is satisfied by at least one of the items in the corpus; and presenting the result set in association with the value of the populated attribute-value pair and the value of the populated extended-state attribute-value pair, wherein the populated attribute value pair is provided as a refinement option for selection by the user in order to refine the search query.