You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by mtraynham <mt...@digitalsmiths.com> on 2011/09/08 23:30:45 UTC

FunctionQueryNode pipeline?

I'm wondering if anyone has attempted this.  The general idea is to have a
FunctionQueryNode, Builder and Pipeline, where functions appear as
foo(param) within the query string.  Further down the pipeline, Solr has
provided functionality for handling ValueSources.  The only issue I have
encountered thus far is the standard QueryParser.jj which pulls out white
space, so identifying a function vs. a group clause hinders any progress. 
Is that why they separated the functionality of queries using the
defType=func?

Ideas?

Thanks,
Matt

--
View this message in context: http://lucene.472066.n3.nabble.com/FunctionQueryNode-pipeline-tp3321214p3321214.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: FunctionQueryNode pipeline?

Posted by Chris Hostetter <ho...@fucit.org>.
: space, so identifying a function vs. a group clause hinders any progress. 
: Is that why they separated the functionality of queries using the
: defType=func?

The function syntax in solr predates the new QueryNode based QueryParser 
in lucene.  

The main motivation behind "defType" was to refactor out out query parsing 
so you could have multiple different Query Parser (lucene, dismax, func, 
etc...) impls (with arbitrary query syntaxes) that could be mixed and 
matched in differetn situations (q, fq, etc...).

having one universal syntax that melds the historic lucene syntax with 
arbitrary functions is something probably too hairy to fathom.  I'm also 
not sure that it would really provide much value add: different syntaxes 
for different audiences seems like a saner idea (let end-users enter 
dismax queries, let advanced users and biz managers specify things in 
lucene queries, let solr admins configure boost queries using function 
syntax that refers to variable params specified by biz uers, etc...)


-Hoss