| Subject: Re: [xsl] starts-with on more than one item From: David Carlisle <davidc@xxxxxxxxx> Date: Sat, 31 May 2008 00:10:42 +0100 | 
glad you got it working, just one comment,
<xsl:choose>
	<xsl:when test="position()=last()">
		<xsl:value-of select="concat(', and ', ., '.')"/>
	</xsl:when>
	<xsl:when test="position()=1">
		<xsl:value-of select="concat(' ', .)"/>
	</xsl:when>
	<xsl:otherwise>
		<xsl:value-of select="concat(', ', .)"/>
	</xsl:otherwise>
</xsl:choose>
swap the first two when clauses, otherwise you'll get an ", and" on a list
of length 1.
If it wasn't for the and you could replace the whole for-each by
<xsl:value-of select="$names" separator=", "/>
It's probably possible to use a trick xpath to get the same effect with
a single value-of, but it's probably more maintainable to use the
for-each form that you have in this case.
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________
| Current Thread | 
|---|
| 
 | 
| <- Previous | Index | Next -> | 
|---|---|---|
| [xsl] starts-with on more than one , Ronnie Royston | Thread | [xsl] Re: xsl-list Digest 28 May 20, Ronnie Royston | 
| RE: [xsl] unicode numeric character, Michael Kay | Date | Re: [xsl] conditional display of co, Ganesh Babu N | 
| Month |