Hi Felix,
On Monday 23 Dec 2002 3:09 pm, hauser felix wrote:
Question: Do you know how to add a prefixed namespace
('xmlns:p="URI"', where URI is not known in advance)
to an output element ('<a>...</a>') WITHOUT producing
an additional dummy-Attribute
('p:dummy-for-xmlns=""')? One Solution would be to
transform the output document again and just remove
the dummy-Attribute, but this doesn't seem to be very
ellegant.
You can get the same effect by using a temporary tree and then copying the
namespace out of it.
<xsl:variable name="dummy">
<xsl:element name="p:a" namespace="something"/>
</xsl:variable>
<a>
<xsl:copy-of select="$dummy/*/namespace::*[1]"/>
</a>
You will need to use your processors nodeset function to access $dummy in the
copy-of. There may be a minor portability issue here in that a processor is
not required to respect your choice of prefix, i.e. the 'p' may be changed to
something else, although that is unlikely unless you have used 'p' for
something else. It works ok with Saxon.
Kev.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list