Bug #4486


Attribute saxon:explain doesn't work

Added by Michael Kay about 2 years ago. Updated over 1 year ago.

Start date:
Due date:
% Done:


Estimated time:
Legacy ID:
Applies to branch:
10, 9.9
Fix Committed on Branch:
10, 9.9
Fixed in Maintenance Release:


According to the documentation, it should be possible to say saxon:explain="yes" on xsl:template or xsl:function to get optimizer diagnostics for that template or function.

This isn't working, on either 9.9 or 10.0.

The basic code support is there (StyleElement.isExplaining()) but it's always returning false.

Actions #1

Updated by Michael Kay about 2 years ago

XSLFunction and XSLTemplate both ignore unknown attributes in the Saxon namespace, so the triggering code in checkUnknownAttribute() is not being fired.

This is consistent with the spec (ยง3.2): "An implementation that does not recognize the name of an extension attribute, or that does not recognize its value, must perform the transformation as if the extension attribute were not present. As always, it is permissible to produce warning messages."

(I don't think we follow this rule in all cases; I think we sometimes reject an extension attribute if it has an invalid value, or if it's not allowed in a particular Saxon edition)

Actions #2

Updated by Michael Kay about 2 years ago

  • Status changed from New to In Progress
  • Applies to branch 10, 9.9 added
  • Fix Committed on Branch 10, 9.9 added

I've fixed the code on the 9.9 and 10.0 branches so saxon:explain now works on xsl:function and xsl:template. The documentation needs changing to reflect the fact that the attribute is available only on these two elements.

Actions #3

Updated by Michael Kay about 2 years ago

  • Status changed from In Progress to Resolved

Documentation updated on the development branch.

Actions #4

Updated by Debbie Lockett about 2 years ago

Documentation changes copied and committed on 9.9 branch.

Online documentation for 9.9 and 10 updated (XML and HTML versions).

Actions #5

Updated by O'Neil Delpratt about 2 years ago

  • % Done changed from 0 to 100
  • Fixed in Maintenance Release 10.1 added

Bug fix committed in the Saxon 10.1 maintenance release.

Actions #6

Updated by O'Neil Delpratt over 1 year ago

  • Status changed from Resolved to Closed
  • Fixed in Maintenance Release 10.2, added
  • Fixed in Maintenance Release deleted (10.1)

Bug fix applied on the Saxon maintenance release.

Please register to edit this issue

Also available in: Atom PDF