[xsl] Debugging XSLT

Subject: [xsl] Debugging XSLT
From: David Tolpin <dvd@xxxxxxxxxxxxxx>
Date: Wed, 4 Feb 2004 01:07:01 +0400 (AMT)
> > input/templates are misbehaving.  This feature makes it much 
> > closer to the 'error on line X' form of debugging most of us 
> > are familiar with.
> Agreed. I've got an early version of this working in Saxon, and I'm very
> impressed with the potential for shortening the debugging loop.

It should not be a feature of the language; it is a debugging
facility; moreover, it is a debugging facility using information
exterior to the language to issue a message.

Schema errors are just a small part of all errors being debugged;
as with other formal languages, achieving syntactical correctness
is the easiest part of debugging process.

If a debugging facility such as this is desirable, it should be
described separate from the core language; the wording of the
working draft does not make it clear that any validation besides
XML Schema can be used, nor it separates this feature from the
core language as a debugging facility.

Further on, what one actually needs is not to determine whether
a given output is valid at a certain point, but what combination
of templates has generated a given node in the result tree. Then
this information can be used to track validation errors, semantic
errors, style and contents issues of the output. 

The processor does have the information (the 'stacktrace') when 
it processes the document, it can attach the information in a 
predefined format to all or some of the result nodes, and a
debugger can later be used to interpret the information and find
the part of the stylesheet which is responsible for this particular

This functionality does not make debugging dependant on one particular
schema language, as the current working draft does, it makes it
possible to trace any kind of errors, not just schema validity errors,
and it will contain sufficient information about the state of the
processor when the result was generated,and not just narrow down the
search through the stylesheet.

And by no means, in my opinion, should this debugging facility be
a part of the language.

David Tolpin

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

Current Thread