Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.7
-
None
-
None
-
PatchAvailable
Description
The XSLT specification describes the use of "custom" output properties using a namespace other than the default or XSLT namespace. For example <xsl:output foo:bar="true" xmlns:foo="http://foo" />
In interpreted mode these properties can be retrieved using getOutputProperties(). In XSLTC however, properties unknown to XSLTC are not returned. The JAXP javadoc explicitly describes that custom properties should be returned. In my humble opinion this is a bug.
We want to use data defined inside the XSLT to configure some after-processing. As a work-around we currently use global: <xsl:parameter name="foo:bar" select="'true'"/>, and retrieve the value with getParameter(). This works in XSLTC, but it does not in interpreted mode. When looking at the javadoc, it seems once again that interpreted mode is right, and the XSLTC behavior for getParameter() is a bug too. Because of the differences in behavior we would need two places for the settings inside the XSLT. Please fix the XSLTC behavior so it is conform JAXP.