XQuery and Web services


I'd like to hear XQuery expert opinions on the subject
of using the language in the context of Web services
rather than documents. If possible, it could be
potentially vey useful, for example, to create
integrated views over several services, pretty much
the way SQL is used for description of multi-DB data
views. I'm considering Web services here since they
seem to be the buzzword of the day, but same issues
are valid for any synchronous invocation paradigm
taking an input XML document and returning an output
XML document.

The apparent difficulty is in the difference between
documents and Web services, the latter being functions
mapping one set of documents into another. There's no
way I can see in XQuery to explicitly specify input
documents (hope no one would suggest putting them into
the URL parameter of the document() function). A
possible solution seems to lie with "virtual global
documents" (VGD), potentially infinite logical
documents encompassing all possible outputs of the
service. The problem here is then how to map elements
of a query into input documents to facilitate service
invocation. It might seem trivial in simple cases of
basic filtering ("return customer info by customer
ID), but tends to turn ugly as soon as input documents
become richer. UDDI's own querying capabilities
provide a good example: while its VGD structure is
quite obvious, producing input documents from queries
expressed in terms of this schema is far from simple.

Best regards

Vadim Draluk

Do You Yahoo!?
Send your FREE holiday greetings online!

Received on Wednesday, 5 December 2001 17:16:58 UTC