> Ok so the more general question is whether we need an interval query parser
Oh, to this I'd say: yes, yes, yes. I didn't have much prior experience writing frontend apps on top of Solr/Lucene but once I did have to go that route it quickly turns out that several things that are readily available from code-level are so darn difficult to achieve and integrate from the outside. Specifically: - Field expansion in query parsers is a must (so that unqualified terms are expanded over multiple fields). Any query parser that doesn't support this is in my opinion of zero use. The "default" copy-to sink field known from Solr brings more problems than it solves. - Exact match-region hit highlighting is a strong expectation. I solved this with matches API (see LUCENE-9461) and flexible query parser's multifield expansion. Works like a charm. - Multivalued fields are common and sub-document handling is a pain. The problem I raised here is a result of direct user feedback. In real life multivalued fields are omnipresent and searches over those fields can be complex. Users see hits that just should not be there and are confused. - People do use complex queries. Maybe not all people but there are people out there who do... Just recently I extended flexible query parser with a handcrafted min-should-match operator because it is otherwise not accessible in any Lucene query parser (!). I can make this code available (it's not terribly complex), although, since you asked, I think a query parser that exposes all sorts of "higher level" functionality of intervals would be very, very useful. It may end up that I'll have to write something for intervals anyway so we can work on this together if you like. Especially the syntax is an open question - should it be operator-based (like the current boost of fuzzy operators) or meta-function-based (so that pseudo-functions would be available). Or maybe a mix of both? I don't know, really. :) Dawid --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
