I have a hierarchical taxonomy of documents that I would like users to be
able to search either through search or "drill-down" faceting.  The
documents may appear at multiple points in the hierarchy.  I've got a
solution working as follows: a multivalued field labelled category which for
each document defines where in the tree it should appear.  For example: doc1
has the category field set to "0/topics", "1/topics/computing",
"2/topic/computing/systems".

I then facet on the 'category' field, filter the results with fq={!raw
f=category}1/topics/computing to get everything below that point on the
tree, and use f.category.facet.prefix to restrict the facet fields to the
current level.

Full query something like:

http://localhost:8080/solr/select/?q=something&facet=true&facet.field=category&fq={!rawf=category}1/topics/computing&f.category.facet.prefix=2/topic/computing


Playing around with the results, it seems to work ok but despite reading
lots about faceting I can't help feel there might be a better solution.  Are
there better ways to achieve this?  Any comments/suggestions are welcome.

(Any suggestions as to what interface I can put on top of this are also
gratefully received!).


Thanks,

Russell

Reply via email to