Yes, you are always limited by the query parser syntax, but of course you can always write your own query parser as well.
There is an open issue for an XML-based query parser that would give you greater control. but... it's not committed yet: https://issues.apache.org/jira/browse/SOLR-839 -- Jack Krupansky On Thu, Jan 1, 2015 at 4:08 AM, Leonid Bolshinsky <leonid...@gmail.com> wrote: > Hello, > > Are we always limited by the query parser syntax when passing a query > string to Solr? > What about the query elements which are not supported by the syntax? > For example, BooleanQuery.setMinimumNumberShouldMatch(n) is translated by > BooleanQuery.toString() into ~n. But this is not a valid query syntax. So > how can we express this via query syntax in Solr? > > And more general question: > Given a Lucene Query object which was built programatically by a legacy > code (which is using Lucene and not Solr), is there any way to translate it > into Solr query (which must be a string). As Query.toString() doesn't have > to be a valid Lucene query syntax, does it mean that the Solr query string > must to be manually translated from the Lucene query object? Is there any > utility that performs this job? And, again, what about queries not > supported by the query syntax, like CustomScoreQuery, PayloadTermQuery > etc.? Are we always limited in Solr by the query parser syntax? > > Thanks, > Leonid >