Re: XQuery and relational databases...

At 07:56 AM 2/28/2003 -0800, Michael Burbidge wrote:

>Does this mean that the FLWOR expression was designed to support
>queries that can be performed on relational databases?

If you look through the use cases, and look at all the examples that use 
FLWOR expressions, that will tell you exactly which use cases motivated us 
to create them. What happened was this: shortly after the use case document 
was published, various people started trying to design languages that could 
solve all the use cases reasonably well, since none of the original query 
proposals could. One of these teams was the group that created Quilt, which 
introduced the FLWR expression and was eventually accepted as the basis for 
XQuery. Something like the FLWOR was simply necessary to solve the use 
cases that required transformation.

Three of the most basic capabilities of XQuery are: (1) Create any XML 
structure with constructors, (2) locate any XML node in an existing 
structure with path expressions, and (3) transform XML structures into new 
XML structures, often  with FLWOR expressions.

The primary motivation for FLWOR expressions was to process XML, but the 
fact that they can be translated relatively easily for use with relational 
data is a real plus. And the decision for a declarative, purely functional 
language was definitely motivated by the desire to make XQuery easy to 
implement in a wide variety of environments.

Jonathan 

Received on Friday, 28 February 2003 18:08:20 UTC