@Yingyi: Yes. It's just a syntactic sugar - it can be anything: "contains_text", "contains text" or "containstext". It would be nice if one form of function is used for both AQL and SQL++. Currently, to follow the Xquery spec, this doesn't work.
Best, Taewoo On Thu, Sep 15, 2016 at 2:27 PM, Yingyi Bu <buyin...@gmail.com> wrote: > Hi Taewoo, > > Are those fulltext search syntax extensions are only a syntactic sugar > (i.e., surface) thing that is translated into functions? > In a not-too-distant-future, we will need to surface fulltext search in > SQL++, probably using the same functions like Oracle. If the AQL fulltext > syntax is translated into fulltext functions by the language translator, we > can easily support them in SQL++. > > Best, > Yingyi > > > On Thu, Sep 15, 2016 at 2:20 PM, Taewoo Kim <wangs...@gmail.com> wrote: > > > I just talked to Mike to resolve 'text' and he suggested an idea to check > > what other systems do. Fortunately, we have collected the information > some > > time ago. You can check the following sheet to see how other systems do. > > > > https://docs.google.com/spreadsheets/d/1j6_YSCc_ > > 8gEReAWFP84geI30wlnsz7uMFq4TCm7GRz8/edit?usp=sharing > > > > MySQL: match(), against() > > Oracle: contains(), catsearch(), matches() > > MongoDB: $text > > AsterixDB: follows XQuery spec(e.g., $o.title *contains text* "hello") > > > > > > > > > > Best, > > Taewoo > > > > On Thu, Sep 15, 2016 at 2:07 PM, Taewoo Kim <wangs...@gmail.com> wrote: > > > > > There are many test cases that use *text* as one of its field name. We > > > can correct it using 'text' or `text`. But, if a user currently uses > > > *text* as its a field name of a dataset, then, clearly, yes, it will > not > > > work. > > > > > > Best, > > > Taewoo > > > > > > On Thu, Sep 15, 2016 at 2:02 PM, Chris Hillery <chill...@lambda.nu> > > wrote: > > > > > >> Making "text" a reserved word seems like a more breaking change than > the > > >> function names, doesn't it? > > >> > > >> Ceej > > >> aka Chris Hillery > > >> > > >> On Sep 15, 2016 1:57 PM, "Taewoo Kim" <wangs...@gmail.com> wrote: > > >> > > >> > Reminder: > > >> > > > >> > Related to the full-text search, a string function named > *contains*() > > >> will > > >> > be renamed to *string-contains*() soon. Also, "*text*" will become a > > >> > reserved word just like "for" or "where". It will happen soon as > the > > >> first > > >> > step to the full-text search merge. Here are more details about this > > >> > change: > > >> > > > >> > On Wed, Mar 2, 2016 at 6:25 PM, Taewoo Kim <wangs...@gmail.com> > > wrote: > > >> > > > >> > > Hello All, > > >> > > > > >> > > I would like to suggest a current function name change. I am > > currently > > >> > > working on Full Text Search features. XQuery Full-text search spec > > [1] > > >> > > states that for a full-text search, the syntax is *RangeExpr ( > > >> "contains" > > >> > > "text" FTSelection FTIgnoreOption? )?*. As you see, we are going > to > > >> use > > >> > > "contains text something". And we already have contains() function > > [2] > > >> > that > > >> > > does a substring match. So, in order to remove possible > ambiguities > > >> > > between two features, *contains()* will be renamed to > > >> *string-contains()* > > >> > > when I merge my index-only branch to the master if there is no > > strong > > >> > > opinion on this. Thank you. I will send another note as my merge > > >> > > progresses. Thank you. > > >> > > > > >> > > [1] https://www.w3.org/TR/xpath-full-text-10/#doc-xquery10- > > >> > FTContainsExpr > > >> > > > > >> > > [2] https://asterix-jenkins.ics.uci.edu/job/asterix-test-full/ > > >> > > site/asterix-doc/aql/functions.html#StringFunctions > > >> > > > > >> > > Best, > > >> > > Taewoo > > >> > > > > >> > > > >> > Thank you. > > >> > > > >> > Best, > > >> > Taewoo > > >> > > > >> > > > > > > > > >