This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: HELP: value-of question
- To: xsl-list at mulberrytech dot com
- Subject: Re: HELP: value-of question
- From: David Carlisle <davidc at nag dot co dot uk>
- Date: Tue, 29 Aug 2000 16:36:38 GMT
- References: <DF3195197E10D4118D70009027DC5C7C18F3EB@CRUISE>
- Reply-To: xsl-list at mulberrytech dot com
> Hi everyone. I'm trying to to populate an xsl:variable with an xsl:value-of,
> as follows:
>
> <xsl:variable name="pid"><xsl:value-of
> select="ancestor::PID"/></xsl:variable>
>
> The xml looks something like this:
>
> <PID>1
> <desc>blah blah</desc>
> </PID>
>
> The trouble is, <PID> is an element, with children, but I just want it's
> text value - i.e. I want my variable to contain "1", not a string
> representation of the whole tree!
>
> And, no, I can't just make the PID value an attr of PID *sigh*
>
> Pls help!!!
<xsl:variable name="pid"><xsl:value-of
select="ancestor::PID[1]/text()[1]"/></xsl:variable>
Or probably you want the variable to contain the text node directly
rather than a result tree fragment, in which case
<xsl:variable name="pid" select="ancestor::PID[1]/text()[1]"/>
In both cases this will give 1 followed by some white space, if you care
about that, you might want normalize-space(ancestor::PID[1]/text()[1])
David
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list