Hi Taewoo, Recently I have added several string functions into *DB: initcap(title), regexp_like, regexp_position, ltrim, trim, rtrim, position, repeat, split
(Replace '_' with '-' in function names for AQL.) You can add them to the AsterixDB column. Best, Yingyi 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_8gEReAWFP84g >> eI30wlnsz7uMFq4TCm7GRz8/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 >> >> > >> >> >> > >> > >> > >