Re: [xml-dev] Ontolgies, Mappings and Transformations (was RE: Web Services/SOA)

From
Daniela Florescu <>
To
Rick Marshall <>
Date
2004-12-01T06:17:48Z
ID
<>
Thread
Re: [xml-dev] Ontolgies, Mappings and Transformations (was RE: Web Services/SOA)
> xml and associated tools - xslt, xquery etc are the nice declarative 
> bit. soap, ws-* etc are the workflow bits (although they're a bit 
> hybrid being to some extent declarative in specification)

You are right,  those are two different pieces in the puzzle for 
programming
with XML (especially Web services). But declarative constructs and 
workflow constructs
do not invalidate each other, they can co-exist as part of the same 
language.

I think that there are two pieces missing in the puzzle for programming 
for
Web Services: adding imperative logic to the XML world (aka statements)
and making the link between XQuery/XSLT and Web services.

XQuery and XSLT don't give us imperative logic. But XQuery gives us
(a) an abstract data model for XML
(b) a type system
(c) expressions
and all imperative languages use those three as building blocks don't 
they ?

So, shouldn't we use them !?

Almost 4 years ago I was playing with extending XQuery to a full 
programming
language for Web Services. The resulting language, called XL, was 
implemented
by a couple of PhD students in Germany and now in ETH in Switzerland.

I think that the web site (that includes a live demo) is still 
maintained by my colleague
Donald Kossmann at

http://xl.informatik.uni-heidelberg.de/index2.shtml

This experiment raised a lot of positive comments. But in the same time 
the idea
of having an XML oriented programming language raised the following 
comments
from Tim Bray:



An XML-Oriented Programing Language? One response has been a suggestion 
that we need a language whose semantics and native data model are 
optimized for XML. That premise is silly on the face of it: here are 
two reasons why:
	• 	Some decades after the advent of the relational database, we have 
not seen programming languages center themselves around normalized data 
models; in fact, the movement away from the C struct-centered worldview 
to O-O code+data encapsulation is really a move away from the tabular 
paradigm. You can embed SQL in most languages now, but normally you 
don't implement any serious business logic in it. If this hasn't 
happened after decades in the relational world, why would we expect it 
to happen in the XML world?	
• 	The notion that there is an "XML data model" is silly and 
unsupported by real-world evidence. The definition of XML is syntactic: 
the "Infoset" is an afterthought and in any case is far indeed from 
being a data model specification that a programmer could work with. 
Empirical evidence: I can point to a handful of different popular 
XML-in-Java APIs each of which has its own data model and each of which 
works. So why would you think that there's a data model there to build 
a language around?



I still don't understand why something like this would be silly.


Best regards,
Dana