Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm looking for the term that applies to a certain kind of filtering behavior. It's often used in webshop-like interfaces, where large amounts of data are filtered based on a selection of filter criteria. The most distinguishing feature is that it's impossible to pick a filter criterium that leads to no results, as the filters that would do so are hidden with real-time updates.

To see an example look at this boot finder section on the blue-tomato.com webshop.

Is there a term for this kind of filtering?

share|improve this question

3 Answers 3

up vote 3 down vote accepted

Your description reminds me of Faceted search. This is a way users can interact and refine a possibly huge set of search results in an intuitive way. You might have seen it on library websites. Your point about "impossible to pick a filter criterium that leads to no results" is fulfilled because the facets are facets of the properties of the search items. Thus there is always at least one item fulfilling the search criterion.

share|improve this answer
    
Exactly what I was looking for, thanks! –  epologee Apr 24 '12 at 12:19
    
@MarkBooth My bad, thanks for the advice. Changed it. –  scarfridge Apr 25 '12 at 6:36

I don't think there is an official name for this type of filtering. The type of filtering you refer to is called "Active Filtering" on Quince and as "Attribute-Based Filtering or Faceted Search Filters" on UX-Matters-Best Practices for Designing Faceted Search Filters.

The fact that you always get results with different combinations is because the system uses current inventory to build filtering options. So if a specific size is not in the inventory, it won't be shown on the filter and you won't be able to choose it.

share|improve this answer
    
Thanks for your detailed answer, your UX-Matters link contains the name 'faceted search', but @scarfridge names that as the answer, so I'm going for his answer. Thanks! –  epologee Apr 24 '12 at 12:18

The query model is called BMO (best matches only) and avoids empty result sets by returning the best matches instead of the perfect matches. This can be achieved by defining a strict partial order over the data you have.

This implies that in case you have zero "hard" matches, all data is returned because the best possible result is the one that is the lowest in your strict partial order. So in practical applications you will combine soft constraints with hard ones to assure that at least some relevant results will be returned.

You can find an introductory paper here.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.