On Dec 13, 2007, at 1:56 AM, Chris Hostetter wrote:

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

Why not just use the whole path as the unique identifying token for a given node on the hierarchy? That way, you don't need to map nodes to unique numbers, just use a prefix query.

taxonomy:Products/Computers/Laptops* or taxonomy:Products/Cases/Laptops*

Sorry - that may be bogus query syntax, but you get the idea.

Products/Computers/Laptops* and Products/Cases/Laptops* are two unique identifiers. You just need to make sure they are tokenized properly - which is beyond my current off-the-cuff expertise.

At least that is the way I've been doing it with IDOL lately. I dearly hope I can do the same in Solr when the time comes.

I have a whole mess of Java code which parses out arbitrary path separated values into real tree structures. I think it would be a useful addition to Solr, or maybe Solrj. It's been knocking around my hard drives for the better part of a decade. If I get enough interest, I'll clean it up and figure out how to offer it up as a part of the code base. I'm pretty naive when it comes to FLOSS, so any authoritative non-condescending hints on how to go about this would be greatly appreciated.

Regards,
George

Reply via email to