Re: [xsl] <quote>XSL is NOT easy</quote>

Subject: Re: [xsl] <quote>XSL is NOT easy</quote>
From: "Eliot Kimber" <ekimber@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 26 Jun 2007 08:26:39 -0500
Michael Kay wrote:
XSL is NOT easy if you want to code professionally in it. It IS easy to use XSL but not well. ....

I would agree with this entirely. But then, I think it's true of every other programming language as well. There is an enormous amount of bad unmaintainable code being written by self-taught amateur programmers, in all sorts of languages, and many of them are attracted to languages like XSLT that look easy at first sight.

If by "easy" you mean "the incremental cost of adding or modifying functionality stays constant or goes down as code size increases" then I would agree that by this measure XSLT is "hard" for the simple reason that it lacks the features of object-oriented languages that make them "easy" by this measure (re-use via subclassing, interfaces, ability to do more or less complete unit testing, deep IDEs for code creation and management, generation of code documentation).


XSLT is optimized for more or less direct mappings from input to output and for that it is definitely "easier" than doing the same thing in something like Java. But as soon as you're trying to do more sophisticated data processing it becomes much harder than doing the same task in an object-oriented language would be. Not that it can't be done, of course, and XSLT 2 makes some things much easier than they were in XSTL 1. But XSLT provides no really effective way to implement the sort of deep abstractions that make some problems much easier to solve.

In particular, I think a lot of people (myself at one time) assume that any processing applied to XML source is best done with XSLT but this is clearly not the case, especially when the XML is just a convenient serialization format for much more complicated objects rather than a representation of a "document" in the generic sense.

Cheers,

Eliot
--
W. Eliot Kimber
Professional Services
Innodata Isogen
8500 N. Mopac, Suite 402
Austin, TX 78759
(214) 954-5198

ekimber@xxxxxxxxxxxxxxxxxxx
www.innodata-isogen.com

Current Thread