Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

If statement in for-each loop

File: Data.xml  <?xml version="1.0"?> <book>      <title>title 4</title>      <author>author 1</author>      <author>author 2</author>      <author>author 3</author>      <author>author 4</author> </book> File: Transform.xslt <?xml version="1.0"?> <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="1.0">   <xsl:template match="book">     <xsl:value-of select="title" />     by     <xsl:for-each select="author">       <xsl:value-of select="." />       <xsl:if test="position()!=last()">,</xsl:if>       <xsl:if test="position()=last()-1">and</xsl:if>     </xsl:for-each>   </xsl:template> </xsl:transform> Output: <?xml version="1.0" encoding="UTF-8"?>title 4     by     author 1,author 2,author 3,andauthor 4