Lists Home |
Date Index |
This has in fact been implemented, just as the original poster described, by
my former employer (http://www.nimble.com).
The query language was not XSLT or XQuery, but a version of XML-QL.
>From: Joe English <email@example.com>
>Subject: Re: [xml-dev] A Query about View Construction in XML
>Date: Thu, 11 Apr 2002 07:49:40 -0700
>Dong Hui Zhuo wrote:
> > Given a XML database DB, and a query Q1, either XQuery or XSLT, we refer
> > to the result of Q1(DB) (the result of running query Q1 against database
> > DB) as a view, say V, whose schema is Sv.
> > Suppose we have another query Q2 (either XQuery or XSLT) which is
> > formulated against schema Sv (the schema of the view V) and the
> > size of view V too big to fit in memory, my questions are:
> > 1) Is it possible that we evaluate Q2(V), (that is running Q2 against
> > result of Q1(DB)), without materializing (or write back to hard disk)
> > result of Q1(DB)?
> > 2) Does the answer depend on the type of query language, say XQuery or
> > XSLT?
>It depends on the query language and the implementation.
>XQuery certainly has the potential to implement this efficiently.
>The query language is closed under composition, so Q2(Q1(DB)) can be
>expressed as (Q2 . Q1)(DB). Depends on how well the implementation
>can optimize (Q2 . Q1).
>For XSLT I think the answer is "only for a very limited set of
>queries", and determining if Q1 and Q2 are members of that set
>is so difficult that it's unlikely to be implemented by any
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp.