: > such that if you search for category, you get all those documents that have
: > been tagged with the category AND any sub categories. If this is possible I
: > think I'll investigate using solr in place of some existing code we have
: > that deals with indexing and searching of such data.
: 
: sort of.   you can index a field literally as "category/subcategory/
: subsubcategory" and query for category/* to get all documents in that category
: and below.

I deal with this kind of stuff all the time ... if you can model your 
hierarchy using unique categoryIds (numbers are easiest) such that no 
categoryId appears more then one place in the hierarchy (something that 
frequently isn't possible with "category names" then it's really easy to 
just index the entire "breadcrumb" for a document and then you can search 
on any categoryId and get all of the documents in any "descendent" 
category.

ie, if this is your hierarchy...

    Products/
    Products/Computers/
    Products/Computers/Laptops
    Products/Computers/Desktops
    Products/Cases
    Products/Cases/Laptops
    Products/Cases/CellPhones

Then this trick won't work (because Laptops appears twice) but if you have 
numeric IDs that corrispond with each of those categories (so that the two 
instances of Laptops are unique...

    1/
    1/2/
    1/2/3
    1/2/4
    1/5/
    1/5/6
    1/5/7

...then you just index the full "path" (a pattern tokenizer can work fine) 
and then you can search on "5" and get all products which are "Cases")




-Hoss

Reply via email to