OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reinventing the wheel (an implementor point of view)

At 02:32 PM 2/26/2001 -0500, Arnaud Sahuguet wrote:

>What I find not that good in XQuery?
>- XQuery wants to be a very expressive language and it is not clear to
>me how you can combine:
>   . composition of queries with the ability to output any XML you want

Could you please unpack that a little? I'm not sure that I grasp your meaning.

>   . optimization with recursive function
>   . optimization with FILTER

You are right - XQuery does want to be very expressive, and this *is* a 
two-edged sword. Recursive functions are going to be hard to optimize - 
that's a fact of life. I think it's worth discussing various ways of 
limiting recursion (structural recursion, fixed-point recursion, 
etc.).  However, tracing chains of references is a common use for recursive 
functions, and this seems like an important thing to be able to do.

Our choices seem to be roughly:

1. Disallow recursive functions, which would significantly limit the power 
of the language.
2. Impose some limit on the forms of recursion that are allowed.
3. Give warnings for recursive functions, or perhaps only for those that 
are not limited to a form that we know is guaranteed to terminate.

Lots of people have done deeper thinking than I have on this, but for what 
it's worth, the third option looks attractive to me right now.

>The main issue (and it is actually a big research issue) is to
>find/guess what the low-level operators for the XML data models
>are. For relational databases, we already know them and this is what
>makes DBMS fast. The holy grail should not be the language, but these
>low-level operators (XScan, from Univ. of Washington, is a first
>attempt. See http://data.cs.washington.edu/xml/xscan.pdf).

Thanks for the reference - I will read this. Clearly, this is a vitally 
important issue.

>For more info, you can read a tech report about the implementation of
>Kweelt: http://db.cis.upenn.edu/DL/kweelt-TR.pdf
>The Kweelt code can be found at: http://db.cis.upenn.edu/Kweelt/
>I will also give a talk at XML Dev Con 2001 in NYC in April.

Thanks for all the references - I'll see you in April. I'd like to meet you 
and talk.