Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Solr Wiki" for change 
notification.

The following page has been changed by CoreyTisdale:
http://wiki.apache.org/solr/ComplexFacetingBrainstorming

New page:
/!\ Please link to from TODO page /!\ I don't have permission to mess with that 
page :)


>From a super high level, here are my thoughts on how complex multifaceted 
>search could work (also called metadata search, guided navigation, browse and 
>search, etc for anyone searching for this).



We add suggestable metadata as part of the product schema, so we could have 
something like
<add>
        <doc>
                <field name='id">12345</field>
                <field name="author_first_letter" suggestable="1">Smith</field>
                <field name="author" suggestable="1" 
preceding="author_first_letter">S</field>
                <field name="price_range" suggestable="1">0-25</field>
                <field name="price">14.23</field>
                <field name="name">Some Crazy Legal Book</field>
        </doc>
</add>

some of those fields would obviously have to be custom added to the schema, but 
that is a 5 minute deal.



Lets say a search happens and our book happens to be in the result set along 
with 1000 other books. Based on our index,  we can scan the resultset and see 
that the results have three suggestable fields, two of which do not require a 
preceding field.

We return a list of the attributes and their distinct values for 
author_first_letter and price_range.

If author_first_letter is specified as S in the next step of the search, then 
we offer the author attribute and the distinct values of author where 
author_first_letter = S

If price_range 0-25 is selected, then we don't show price in the metatdata 
list, since it is not suggestable. We do show the author_first_letter field 
again though. 


If we expand the idea of preceding to hold a coma separated list of necessary 
preceding fields, then any search manager anywhere should have the flexibility 
he/she needs to custom tailer the browsing experience. :TODO: continue this 
line of thought...




I don't think this would be really much more difficult than trying to extract 
attributes, and it gives people an easier time adiopting this project without 
shutting down the default functionaity that the TODO list suggests right now.

Reply via email to