This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
question on apply-templates and strip-space
- From: Alice Tull <tull at narus dot com>
- To: <XSL-List at lists dot mulberrytech dot com>
- Date: Wed, 20 Feb 2002 16:55:15 -0800 (PST)
- Subject: [xsl] question on apply-templates and strip-space
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi,
I'm new to XSL. I'm trying to get the following input:
<MyStuff>
<Tag1>
This is just a <Tag2>normal</Tag2> line.
</Tag1>
<Tag1>
This is the second <Tag2>normal</Tag2> line.
</Tag1>
</MyStuff>
To be generated as the following output:
Ta-Da:This is just a {1} line.
Ta-Da:This is the second {1} line.
I want the result to be simple "text" rather than XML or HTML.
Here's my stylesheet:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" indent="no" />
<xsl:strip-space elements="*"/>
<xsl:template match="Tag2">{<xsl:number count="*"/>}</xsl:template>
<xsl:template match="/">
<xsl:for-each select="MyStuff">
<xsl:text>Ta-Da:</xsl:text>
<xsl:apply-templates select="Tag1"/><xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
My output was:
Ta-Da:
This is just a {1} line.
Ta-Da:
This is the second {1} line.
Which has more spaces and linefeeds than I want.
The spaces in the text output was exactly the same as the spaces in
the original xml file. Shouldn't "strip-space" get rid of the
linefeed and spaces in the original <Tag1> node? Will normalize-space
help, and how to use it in the case where I need to apply-templates?
Btw, I tried this on the latest version on both Xalan and libxslt.
thanx,
alice
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list