We are allowed to create xmlns or xmlns:* the literal way, but we can
apparently not use attribute value template for the namespace. This is
probably not that surprising since we cannot create xmlns or xmlns:*
with xsl:attribute.
But it surprices me that we don't get an error message. The following
stylesheet is tested with Saxon 9 in Oxygen and with AltovaXML 2009 in
XMLSpy:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:template name="start" match="/">
<xsl:param name="x" select="'asdf'"/>
<catalog>
<product xmlns="asdf">some data</product>
<product xmlns="{$x}">some data</product>
</catalog>
</xsl:template>
</xsl:stylesheet>
We get the following output in Oxygen:
<catalog>
<product xmlns="asdf">some data</product>
<product xmlns="{$x}">some data</product>
</catalog>
And the following output in XMLSpy:
<catalog>
<product xmlns="asdf">some data</product>
<product xmlns="%7B$x%7D">some data</product>
</catalog>
The one even more strange than the other! Should it have been an error
message instead? Or should the attribute value template work?
Cheers,
Jesper Tverskov
http://www.xmlkurser.dk
http://www.xmlplease.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>
--~--