> -----Original Message-----
> From: Alan Kent [mailto:[log in to unmask]]
> Sent: Friday, September 27, 2002 12:35 AM
> To: [log in to unmask]
> Subject: Re: Expressing Term Structure
> On Thu, Sep 26, 2002 at 11:19:53AM -0400, Ray Denenberg wrote:
> > I'm in favor of moving forward, quickly,
> > with some form of the proposal on the table.
> > --Ray
> I agree - I would rather see a proposal finished that I don't like
> than not see a proposal. So feel free to ignore my opinions (or take
> them into account but make a decision not in line). I don't think you
> will ever get complete consensus. If it gets things moving,
> I am happy
> for multiple '='-style operators. I have been convinced CQL is
> designed for advanced users. SQL for example is not trivial either.
> Humans can enter SQL, but its not for novices. I think its reasonable
> to pitch CQL at the same level.
> Overall I think I have also been convinced that the grammar should be
> tight and formal (eg: I think I would like quotes around all search
> text - you can never omit them). CQL is a search language for experts
> and probably computer programmers (people turning other web form
> queries into CQL for example), and so would benefit by
> following standard
> programming language style grammars (limited set of reserved words,
> aritrary text in string literals). I am also happy with
> pattern characters
> being inside string literals (as previously agreed to) and using \ to
> release things. Again this is a common thing done.
> Need to decide if reserved words and index names are case sensitive
> (dc.title = DC.TITLE = DC.Title?).
> I still like the idea of having some sort of extensible notation for
> introducing other attribute combinations. Eg: how to do fuzzy matches?
> Or a GEO profile search? I am happy for CQL to have a set of operators
> hard coded to specific attribute lists ('>', '<=' for example will be,
> so happy to allow '=*' or whatever too). But what about other
> such as a 'within-region' for GEO? I don't think can have
> operators defined
> for all possible attribute lists, so some extensible scheme
> would be good.
> dc.title = @fuzzy("center")
> dc.title/fuzzy = "center"
> dc.title:fuzzy = "center"
> I think someone suggested the ':' notation once before. That is,
> an index name followed by zero or more ':modifier's.
> Hmmm - should I dare suggest the following? Only have '=' but allow
> modifiers for all of the different attributes?
> dc.title:any = "a b c"
> dc.title:any:stem = "a b c"
> dc.title:all = "a b c"
> dc.title:rel = "a b c" (relevance)
> dc.title:str = "a b c" (string)
> dc.title:lt = "a b c"
> dc.coverage:boundedby = "12.3 32.4 52.3 90.1"
I really prefer this to adding a bunch of special characters. I think this
is a fine general solution. How we Explain the modifiers is another issue.