xsl-list
[Top] [All Lists]

Re: [xsl] Prevent compilation error for xsl:namespace in XSLT 1.0

2007-01-15 02:21:23
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>
--~--