OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: advocating XML

> On Tue, 13 Mar 2001, Paul T wrote:
> > You have used XSLT as a general purpose language. There are some
> > people who do that. They do that for fun, I think, because those who
> > have real-life experience in maintaining XSLT systems should know
> > that it eventually turns into nightmare. For many reasons. Most of
> > the reasons why XSL programming is harmful, have been explained by
> > Mr. Leventhal 2 years ago (and I admit that at that point of time I
> > was blind enough not to understand what he was talking about.)
> Do you have a pointer to Mr. Leventhal's explanation?

Try typing:


Leventhal XSLT


> > Not only you'd write this set of converters faster ( because you be
> > using a general-purpose language *which xslt is not* ), but what you
> > produce will be *correct* , easy to *debug* and *really*
> > error-prone.
> You didn't really mean what you just wrote, did you?


1. XSLT is not a general purpose language. ( See first paragraph of XSLT Rec )

2. It takes a long time to write working XSLT  ( because complex Xpath is harder 
to debug than complex regexpr. )

3. It is hard to debug any  part of XSLT, not only Xpath. For example, 
there is no way to capture why infinite loop happens, because you can not 
just insert 'print' statement here and there. And when it comes to complex 
transformations - recursive call-template is very typical thing.

4. When making some change to a complex XSLT program ( which 
consists of several modules, for example ) it is almost impossible to be  
sure that the "entire complex" will survive the change. 

XSLT is good  for simple one XML source -> one XML / HTML output. 
( Actually, XSLT has a funny problem even *here*, because what 
I  *really* want these days is XML source -> XHTML output with <BR />
but *not* <BR/> or <BR> ).

XSLT has some beauty in the processing model. Unfortunately, 
positioning XSLT as an 'XML processing assembly'  is not possible.
So is positioning XSLT as a  general purpose language for xml 

What point you disagree with ?