This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: concat selected text nodes
- To: xsl-list at lists dot mulberrytech dot com
- Subject: RE: [xsl] concat selected text nodes
- From: "Clapham, Paul" <pclapham at core-mark dot com>
- Date: Fri, 20 Apr 2001 10:28:40 -0700
- Reply-To: xsl-list at lists dot mulberrytech dot com
When you say "concatenate" them, do you mean you want them contiguous in the
output with no newlines intervening, like this?
|This is a||new|| sentance.|
If so, then all you have to do is not put in those newlines. At present
what you see as "|" is actually a text node in your stylesheet that consists
of a newline character plus a bunch of spaces plus a | character. Try using
this line instead:
<xsl:text>|<xsl:text/><xsl:value-of select="."/>|<br/>
PC2
-----Original Message-----
From: Steve Renshaw [mailto:renshaw_steve@hotmail.com]
Sent: April 20, 2001 09:56
To: xsl-list@lists.mulberrytech.com
Subject: Re: [xsl] concat selected text nodes
David, your code just returns "This is a" - nothing mroe. You
code and my best effort is blw;
<xsl:template match="item">
<xsl:variable name="x">
<xsl:value-of select="text()|ver[@id=$ver]"/>
</xsl:variable>
<xsl:value-of select="$x"/><br/><br/>
<xsl:for-each select="//text()[parent::*/@id='1' or not(parent::*/@id)]">
|<xsl:value-of select="."/>|<br/>
</xsl:for-each>
</xsl:template>
XML:
<item>This is a<ver id="0">n old</ver> <ver id="1">new</ver>
sentance.</item>
Produces:
This is a <- David
|This is a| <-
|new| <- my best so far
| sentance.| <-
How can I concatenate my three pieces?
"This is a new sentance."
Having trouble doing it with string() which should concat.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list