xsl-list
[Top] [All Lists]

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

2007-01-14 07:28:20
  Hi

  I'm facing a simple problem, but I'm a little bit confused
and can't find the solution.  How to use xsl:namespace in an
XSLT 1.0 stylesheet to benefit its support if the stylesheet
is run with an XSLT 2.0 processor, but without generating a
compilation error on XSLT 1.0 processors?

  The goal is to write a named template that generates a
namespace node that can be copied to the result tree, using
either xsl:namespace, exslt:node-set(), *:node-set() or in
the worst case a dummy attribute whose the URI part of the
name is the namespace URI:

    IF available xsl:namespace
      ...
    ELSIF available exslt:node-set()
      ...
    # once for each other implementation specific node-set
    # functions
    ELSIF available *:node-set()
      ...
    ELSE
      <xsl:attribute
          name="{ concat(@prefix, ':dummy-for-xmlns') }"
          namespace="{ @uri }"/>

  So what can I use in the first branch in the above
algorithm?

  PS: The only solution I see now is to put the named
template in a separate stylesheet file, with @version="2.0"
and using element-available('xsl:namespace') as test in the
xsl:when.  But I would like to have only one stylesheet
file.

  Thanks in advance,

--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>
--~--