Re: [xsl] [Fwd: Re: Re: Using a variable in XSLT]

Subject: Re: [xsl] [Fwd: Re: Re: Using a variable in XSLT]
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 4 Sep 2003 12:31:07 +0100



<!-- This doesn't deliver the expected result. In particular because xs:documentation is not present in the output anymore -->
<xsl:template match="//xs:annotation/xs:documentation">
<xsl:apply-templates select="self::*[lang($lang)]/*[name()=$SystemSelected]"/>
</xsl:template>

by default _no_ elements appear in the output, theuy only appear if you
put them there.

your template matching node() does xsl;copy so other elements get copied
but  xs:documentation elements are matched by this template so if you
want them to generate an xs:documentation use xs:copy (or
xs:documentation) here as well:

<xsl:template match="xs:documentation">
<xsl:documentation>
<xsl:copy-of select="@*/>
<xsl:apply-templates select="self::*[lang($lang)]/*[name()=$SystemSelected]"/>
</xsl:documentation>
</xsl:template>

Note I've removed the //xs:annotation/ from the match string, you never
want to start a match with // (it doesn't do anything useful) and you
don't need xs:annotation here as you want to match all xs:documentation

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread