Alan Kent wrote:
>On Fri, Nov 28, 2003 at 12:49:29PM +0100, Adam Dickmeiss wrote:
>
>
>>And when you get
>> dc.title = a and b
>>it doesn't work.
>>
>>You would have to do some preprocessing stage yourself... To turn it into
>> dc.title = a and dc.title = b
>>
>>
>
>This is a little different than the previous rationale.
>This one is not to allow
>
> index=(a and index=b)
>
>This is to allow
>
> index=(a and b)
>
>Three options:
>(1) Tough luck! ;-)
>(2) Allow index=(cqlQuery)
>(3) Allow index=(termQuery)
>
>For (3), you define a new gramatical rule that says you can have a series
>of terms connected by boolean operators, but nothing else inside the
>parenthesis.
>
>
I don't see any reason to make a more complicated grammer - just to
reduce people's freedom in expressing queries. The notion of scopes -
being able to override a prefix is actually quite useful when you
combine arbitrary queries. There is no conflict here. The semantics of
expressing these nested queries are trivial.
I vote for 2).
-- Adam
> termQuery = term
> | termQuery boolean term
> | '(' termQuery ')'
>
>Alan
>
>ps: Pushing your example through, do you want to allow users to specify
>modifiers on individual terms? They wont be able to specify the comparison
>operators for the words. You could say instead (where did I put my flame
>proof suit now?)
>
> termQuery = [ comparitor modifier*] term
> | termQuery boolean term
> | '(' termQuery ')'
>
>allowing (very evil grin >>:-))
>
> dc.title=( a and <>b and =/stem c)
>
>If people want 1.1 finished soon, I raise the option of leaving out
>indexes on parenthesis groups for post 1.1 to allow people to think
>on this one some more. I am not proposing we do the above. It would
>simply be useful in your form-filling example.
>
>
>
|