[
Lists Home |
Date Index |
Thread Index
]
> XSLT's unnecessarily verbose syntax, limited set of useful
> builtin functions & operators and unfamiliar programming
> model (why is an xsl:variable called a variable if it doesn't
> vary?) have always made it seem inaccessible to many users
> who would otherwise benefit from it. XQuery fixes these
> issues which makes it more approachable to the thousands of
> developers who have to process XML data and have thus far
> limited themselves to object <->XML technologies , DOM or
> streaming APIs because they couldn't grok XSLT.
>
Hmmm. You're talking about perceptions here, and I find it difficult to
talk about perceptions because your perceptions of the perceptions of
"thousands of developers" are not necessarily the same as mine, and
neither of us is wrong.
But objectively:
(a) the verbosity of XSLT is not "unnecessary", it has several important
benefits:
(1) it means that XSLT re-uses all the syntactic and lexical machinery
of XML (which means users can use the same tools and the same mental
model).
(2) You can write transformations that take stylesheets as their input
or produce them as their output, a closure which is absent in XQuery,
and which is extremely useful in most large-scale applications.
(3) The redundancy in the XSLT syntax enables much better error
messages than you will ever get out of XQuery.
(b) the library of functions and operators in XSLT 2.0 is a superset of
that in XQuery 1.0
(c) the processing model of XQuery and XSLT, as regards variables, is
identical. And newbies will have exactly the same problems with it: just
wait till people start writing
let $x:=1 return
for $i in $I return
let $x := $x + 1
return J[$x]
Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com
|