Subject: RE: return something x number of times
From: "Jesper Tverskov" <jesper@xxxxxxxxxxx>
Date: Fri, 16 Sep 2005 08:22:13 +0200
|
> If you want the characters concatenated without spaces, use
> <xsl:value-of select="$indent_4" separator=""/>, or use
> string-join($indent_4, "").
The string-join() solution works well in XMLSpy and solves my problem.
The "separator" solution does not work in XMLSpy.
Best regards,
Jesper Tverskov
-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Friday, September 16, 2005 12:06 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: return something x number of times
>
> In XSLT 2.0 (in XMLSpy) this markup:
> <xsl:variable name="indent_4" select="for $a in 1 to 4 return 'x'"/>
>
> Returns 'x x x x'.
>
> Why the whitespace?
>
Assuming XMLSpy is implementing the spec correctly, $indent_4 is a sequence
of 4 strings, not a string of 7 characters as you suggest. It comes out as a
string of 7 characters when you output it using xsl:value-of, because
xsl:value-of by default inserts spaces as separators between the strings in
a sequence.
Michael Kay
http://www.saxonica.com/
|