[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: XSLT 1.0 and XSLT 2.0 differences in position()?

Subject: Re: XSLT 1.0 and XSLT 2.0 differences in position()?
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 13 Dec 2007 01:58:58 GMT
Re:  XSLT 1.0 and XSLT 2.0 differences in position()?
<xsl:if test="position( ) !=last( )">, </xsl:if>
<xsl:if test="position( )=last()-1">and </xsl:if>


If you are processing every item then clearly (if there are more 1
items) this will make ", and" as on the last but one iteration
position()!=last(0 so you get a , and it is equal to last()-1 so you get
and as well.

If you only want , in the cases before you do and, not overlapping
cases, then code it that way:


<xsl:if test="position( ) &lt; last( )-1">, </xsl:if>
<xsl:if test="position( )=last()-1">and </xsl:if>

the difference between xslt 1 and 2 is that in xslt 1 you are probably
just processing the items in positions 2,4,6,... with intervening items
being white space, that;s a dangerous practice (if you have any white
space after the last item the "and" will come in the wrong place.

xslt 2 (if you have a suitable dtd/schema) will autmatically throw away
the white space.

If you are using position() it's safest to explictly make sure just the
right nodes are select by going for example apply-templates
select="xyz"/. rather than <xsl:apply-templates/.
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

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.