No concrete feedback for the refactor (i.e. move to SolrJ) you've got underway.

But I just wanted to add a note of encouragement and a +1 to the
general idea.  If it's done right a query-builder would be a huge
boost for Solr's users IMO!

Good luck w/ the refactor Geoffrey and thanks for bringing this up!

Jason

On Sun, Aug 18, 2024 at 4:36 PM Geoffrey Slinker
<geoffrey_slin...@yahoo.com.invalid> wrote:
>
> I will refactor my idea to be found under SolrJ. Also, I will refactor trying 
> to better fit the domain terminology.
>
> After I get the refactoring finished I will post a new message.
>
> If there are those that have time to look at the branch that is in my fork of 
> Apache Solr, especially at the classes and then how to use them in the unit 
> tests I hope they might share more guidance on the subject matter.
>
> For example, a QueryTerm has a value, may have a field, and may have options 
> such as proximity, fuzziness, boost, or a constant score.
>
> title: "pink panther" - is an example of a QueryTerm in my current 
> implementation. Other examples:
> title: "pink panther"~2^0.3 (proximity and boost)
> "pink panther"^=1.4     (default field and constant score)
> firstname:maria~2 (fuzziness)
>
> A QueryTermGroup contains query terms and other query term groups. I think 
> these are probably known as sub-queries.
> An example of a group:
> ( title:"treasure island"^0.5 title:"war and peace"^0.5 )^2.0   A group that 
> has two terms that each have a boost and the entire group has a boost.
>
> A query term group can have its own boost or constant score.
>
> Geoffrey
>
>
> > On Aug 17, 2024, at 10:36 PM, David Smiley <dsmi...@apache.org> wrote:
> >
> > Perhaps Solr could adopt Elastic's Java QueryBuilder API, more or
> > less?: 
> > https://artifacts.elastic.co/javadoc/co/elastic/clients/elasticsearch-java/8.15.0/co/elastic/clients/elasticsearch/_types/query_dsl/package-summary.html
> > Is this what you referred to?  It needs an example (like what you
> > shared for your builder), which I didn't find.  First iteration could
> > be a minimal useful subset that grows as people have the inclination
> > to do so.  Of course Elastic's outputs Elastic JSON; we'd probably do
> > Solr's "lucene" syntax with local-params when needed.  Solr Query DSL
> > is an option but (A) I think most users would prefer something more
> > compact & simple for the basic use-cases, and (B) the JSON query DSL
> > can only be used in a couple places; there is no QParser for it
> > (although there could/should be one easily).
> >
> >> What is the proper domain name for:
> >> title:"pink panther"
> >
> > In Lucene-speak, this is a PhraseQuery.  Although a query parser will
> > usually run the query analysis chain on it, which can produce
> > different or additional terms that will show up in the actual
> > PhraseQuery.  Lucene's QueryBuilder will do this.  I imagine a SolrJ
> > QueryBuilder would/could have a .fieldQuery(fieldName,foobar) and the
> > phrase vs single term matter is a detail in the output based on
> > whether the foobar value has spaces or not (here it didn't).
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@solr.apache.org
> > For additional commands, e-mail: dev-h...@solr.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@solr.apache.org
> For additional commands, e-mail: dev-h...@solr.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@solr.apache.org
For additional commands, e-mail: dev-h...@solr.apache.org

Reply via email to