RE: [xsl] LINQ to XML versus XSLT

Subject: RE: [xsl] LINQ to XML versus XSLT
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 27 Jun 2008 20:39:48 +0100
> Like I said, the proprietary preprocessor we use at my work 
> is tag-based, and is quite pleasant for working with XSLT, 
> HTML and other tag-based input and output. We've been using 
> it less and less for raw string-based HTML generation, and 
> more for a "glue" of sorts to coordinate the other 
> technologies that do the brunt of the hard work. It does a 
> wonderful job of, say, taking in a SOAP request, feeding the 
> XML payload into an XSL transformation that generates SQL 
> code to verify the business information in there, taking the 
> FOR XML AUTO result of that SQL query and transforming it 
> into its own code (which can generate e-mails, do file I/O 
> manipulation, etc.), which it can then run. It's procedural, 
> sure, but only where it needs to be procedural. (Michael 
> Ludwig's comment about SQL relevant here.)

My thinking is that the right tooling for this job is not pure XSLT, but
XSLT+XProc. XSLT is designed as an XML transformation language, and I think
it's a mistake to try and get it to cook your breakfast for you. XProc, by
contrast, is designed as a language for integrating different technologies
and making them work together: XForms, XQuery, XSLT, and if you need them,
components written in low-level Java or C# code. I think you do need a level
of the system that can sequence work in a defined order (because when you're
talking to users, the order in which you do things matters), and that means
a purely functional language isn't ideal for everything

James talked about building a Java framework for doing this integration
task, and for the high end applications that may continue to be necessary,
but I'm optimistic that for the other 95%, XProc will meet the requirement.

Michael Kay
http://www.saxonica.com/

Current Thread