Diagnostics and tracing

The format of the "explain" output which displays a compiled and optimized expression tree has changed. The format is now XML, making the raw output amenable to further processing, for example filtering or graphical display. The -e flag on the Query command line is extended to allow -explain:filename, so that the output can more easily be captured in a file.

The options -explain and -explain:filename have been added to the Transform command line allowing an expression tree to be generated for an entire stylesheet. The extension attribute saxon:explain remains available for more selective reporting.

From the Java level, explain output is available via a new method on the Expression class. The old display() method is retained (for the time being) for compatibility, but produces output in the new format.