XQuery as a general data processing language WAS: [xquery-talk] XQuery and Web 2.0

Daniela Florescu dflorescu at mac.com
Fri Apr 25 11:58:36 PDT 2008

> XQuery was designed as a query language and it does that job very  
> well.

It's not exactly true. Me, together with many other people who  
participated to
the creation of XQuery (only *some* of us, though !), since day one,  
we always had in mind,
while designing XQuery, a  general programming language for XML data  
and not merely a "query" language (whatever that means).

(BTW,  query language is a meaningless term.. e.g. is try-catch query  
or process !?
Is node construction query or process !? etc, etc where do you put the  
boundary between
"query" and general processing !? We should not have any such  
boundaries, simply because there
is no reason for them. Such boundaries are historical in the SQL/JAVA/ 
whatever stack and they create
lots of troubles.)

The only reason some of us agreed to call it a query language 8-10  
years ago is political.
If we would have said that we wanted to design a general data  
processing language our companies
would not have allowed us to do it.

> It
> was not designed as a general-purpose programming language, and I  
> think it's
> a mistake to try and use it as one.

I totally disagree with you, and I really hope that time will prove  
you wrong.

I don't think XQuery should be a general programming language, like in  
implementing a
network protocol in for example.

But I think it is a great language for general data processing. It  
does the job very well.

If your program involves primarily data extraction, filtering,  
transformation, creation of new
pieces of information, invoking external REST or WS APIs and then  
recombining the result,
XQuery might be a very good solution.

And by the way, that's exactly what those Web 2.0 mashups applications  
do. I looked very carefully
at the examples that I saw during the conference, and most of them can  
with XQuery. Most of them involve calling and combining some REST/WS  
apis in innovative ways,
but all the data in and out of those external calls is XML.

My problem is not figure out whether XQuery is a good solution for Web  
2.0 mashups, because very often it is.

My problem is how to make people see this fact.

I think the most important part is to put out there open source XQuery  
modules that do useful stuff, like an
online store, a CRM app, and/or some fun stuff like some IPhone apps  
that can be written nicely with XQuery.

Best regards

More information about the talk mailing list