This is really nice! Perhaps you may want to store the facet
definitions (or group of facet defs) on the server
and return them when asked for?
// Ryan
If we agree on this, we could group facets and invoke them by a
certain command. something like this:
TO 100]&Facet.Price.Range=[100 TO 200]&Facet.Price.Range=[200 TO NULL]
invoke:
http://localhost:8080/databases/Tiger/facets/Products?FacetGroup=MyFacetName
which would return your results. And, of course, you should also
support the adhoc approach.
How about that?
// Ryan
> c) I push it to the unstable branch>Sure, I'd be happy to.
> If you can write some docs for it, that would be wonderful
Just a couple of other things
- Would it be beneficial for the facet results to be returend with the
query results, in 1 call? I.e. extend QueryResult to have a "Facet"
property, like if has one for "Includes"
- There'a a bug I need to fix with the Range strings. At the moment
you can't mix and match "{" and "[", inclusive and exclusive, because
the Lucene Query Parser fails to parse it. So you can't write "{100 TO
200]", "{200 TO 300]", which might be useful in certain scenarios.
I'll send a pull-request for this.
See http://ravendb.net/documentation/faceted-search.
It's not linked to from anywhere else on the site at the moment, I
thought you'd want to take a look first.
BTW are you happy for me to post a thread on this board about it, so
that it gets some more visibility?