Colin Adams wrote:
Hi
From: Florent Georges
Yes, I think the external module is the best solution.
And to prevent compilation error with processors don't
supporting the namespace axis, I think a use-when with
element-available('xsl:namespace') will be enough (because
this can only arise with XSLT 2.0 processors)?
Support for the namespace axis is another matter. Xsl:namespace
will be available for all XSLT 2.0 processors.
Yes, I wasn't clear enough. The first xsl:when will use
xsl:namespace if available. In the other xsl:when, there will be for
example the following well-known trick:
<xsl:when test="function-available('exsl:node-set')">
<xsl:variable name="ns-dummy-elements">
<xsl:element name="{ @prefix }:e" namespace="{ @uri }"/>
</xsl:variable>
<xsl:copy-of select="exsl:node-set($ns-dummy-elements)
/ */namespace::*"/>
</xsl:when>
I think in this case, the only way to prevent compilation error on
XSLT 2.0 processors that don't support the namespace axis is to use
@use-when. Hhere, use-when="false()" does the job, because only the
XSLT 2.0 processors will use this attribute, and all will provide
xsl:namespace, used in the first xsl:when.
Regards,
--drkm
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur
Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--