Folks-
Naming is hard! (But you all know that already).
Marc D'Mello and I have been working on a new faceting implementation
that's meant to complement Lucene's existing range-relation queries (e.g.,
LongRange#newIntersectsQuery, DoubleRange#newContainsQuery,
LongRangeDocValuesField#newSlowIntersectsQuery, etc.). Well, I should say
Marc is working on the change and I'm just providing nit-picky feedback on
his PR, which is here: https://github.com/apache/lucene/pull/11901. The
general idea of this feature is to allow users to get facet counts for
these sorts of range-relation filters before they're applied. For example,
if a user is indexing ranges with their documents, they may have a set of
query-ranges they want to facet on, based on some range relationship (e.g.,
intersection, contains, etc.).
As a concrete example, imagine that documents contain a price range (maybe
a document represents some e-commerce product but the price varies based on
some configuration options), and a user wants to build a price range filter
that applies filtering based on whether-or-not the two ranges intersect
(i.e., DoubleRange#newIntersectsQuery to apply a price range filter). This
user wants faceting capabilities over the different price ranges they want
to make available, so they need a way to facet over a list of provided
query-ranges, based on the "intersect" relationship with the doc-encoded
ranges. That's what Marc's "RangeOnRange" faceting is trying to accomplish.
In my opinion, the PR is really close to being ready (thanks again Marc!),
but I'm wondering if we can come up with a more descriptive name. As it
currently stands, the feature is termed "RangeOnRange Faceting," which
feels just a bit wonky to me. That said, I can't really come up with
anything better.
** Does anyone have suggestions on a better name? **
Any / all suggestions appreciated! (And of course, any other input on the
PR is welcome if anyone is interested).
Cheers,
-Greg
Naming is hard! (But you all know that already).
Marc D'Mello and I have been working on a new faceting implementation
that's meant to complement Lucene's existing range-relation queries (e.g.,
LongRange#newIntersectsQuery, DoubleRange#newContainsQuery,
LongRangeDocValuesField#newSlowIntersectsQuery, etc.). Well, I should say
Marc is working on the change and I'm just providing nit-picky feedback on
his PR, which is here: https://github.com/apache/lucene/pull/11901. The
general idea of this feature is to allow users to get facet counts for
these sorts of range-relation filters before they're applied. For example,
if a user is indexing ranges with their documents, they may have a set of
query-ranges they want to facet on, based on some range relationship (e.g.,
intersection, contains, etc.).
As a concrete example, imagine that documents contain a price range (maybe
a document represents some e-commerce product but the price varies based on
some configuration options), and a user wants to build a price range filter
that applies filtering based on whether-or-not the two ranges intersect
(i.e., DoubleRange#newIntersectsQuery to apply a price range filter). This
user wants faceting capabilities over the different price ranges they want
to make available, so they need a way to facet over a list of provided
query-ranges, based on the "intersect" relationship with the doc-encoded
ranges. That's what Marc's "RangeOnRange" faceting is trying to accomplish.
In my opinion, the PR is really close to being ready (thanks again Marc!),
but I'm wondering if we can come up with a more descriptive name. As it
currently stands, the feature is termed "RangeOnRange Faceting," which
feels just a bit wonky to me. That said, I can't really come up with
anything better.
** Does anyone have suggestions on a better name? **
Any / all suggestions appreciated! (And of course, any other input on the
PR is welcome if anyone is interested).
Cheers,
-Greg