Position() question

Subject: Position() question
From: Matthew Bentley <Matthew.bentley@xxxxxxxxxxxxxx>
Date: Fri, 1 Sep 2000 10:30:11 +1200
If I have some data:

<head>
	<text> blah blah </text>
	<text> etc </text>
	<text> yadda yadda </text>
</head>

And I want to generate this output:

<head>
	<item>
		<label>1</label>
		<text> blah blah </text>
	</item>
	<item>
		<label>2</label>
		<text> etc </text>
	</item>
	<item>
		<label>3</label>
		<text> yadda yadda </text>
	</item>
</head>

Obviously I can do this:

<xsl:template match="text">
	<item>
		<label>
			<xsl:value-of select="position()" />
		</label>
		<text>
			<xsl:value-of select="." />
		</text>
	</item>
</xsl:template>

, but only if I strip whitespace so that position() doesn't pick it up
whitespace nodes.
How can I preserve whitespace and still output the correct label number,
without resorting to: <xsl:value-of select="count(preceding-sibling::text +
1)" /> ?

Thanks,
M@
******************************************************************
Warning: This email, including any attachments, 
is for the use of the intended recipient(s) only.
Republication and redissemination, 
including posting to news groups or web pages, 
is strictly prohibited without the express prior consent of Brooker's Limited.
******************************************************************


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


Current Thread