On 1/20/07, Chris Hostetter <[EMAIL PROTECTED]> wrote:

: > In the back of my mind, I've been thinking about *how* to support
: > multiple query syntaxes.
: > trying to add new parameters everywhere specifying the type doesn't
: > seem like a great idea (way too many places).

: Good point.  Yeah, it does make sense for the query type to be part
: of the query string itself.  There are lots of places that a
: QueryParser expression can currently be used (&q=, &fq= with standard
: requests, and other places with dismax).

are you guys concerned that people will want to use different sytnaxes for
different places where a query is expressed, ie: use the stock syntax in
one "fq", the xml syntax in a "q", and the surround syntax in a second
"fq" ?

i'm not sure if i'd be that worried .. i would think that with
StandardRequestHandler you'd probably want to use the same syntax
everywhere, with dismax you'd use the dismax syntax for the "q"
(obviously) but the fq/bq params could all just use the same syntax.

Some syntaxes might come by default from solrcondig.xml, and some
might come from the request.
Also, if you just needed one span query, you wouldn't want to force
all other queries to be in the same syntax.  Think about having to
change your faceting code that uses QueryParser queries because you
suddenly discovered you needed something that supported a span query
as the base query.

putting a prefix on every query string to identify the syntax seems
cumbersome ... put i guess it wouldn't be too bad if it was done as an
"override" for a single q.syntax option thta influenced all "query
strings" type params that didn't start with the special markup.

using an xmlish processing instruction looking header may not be the best
choice if one of hte sytnaxes we want to support is XML  :)

No, that would just mean you would get XML for free as long as you included the
standard <?xml ...?> declaration since it would automatically match.

*But*, if we wanted to make it extensible (by allowing the inclusion
of other info about the query), then we would want to strip it off
before passing to the right query parser, so you are right.

-Yonik

Reply via email to