[Home] [By Thread] [By Date] [Recent Entries]
<products> <product id = "1"> <name>product1</name> <weight>56</weight> <color>blue</color> </product> <product id = "2"> <name>product2</name> <weight>56</weight> <color>red</color> </product> <product id = "3"> <name>product3</name> <weight>56</weight> <color>red</color> </product> <product id = "4"> <name>product4</name> <weight>56</weight> <color>blue</color> </product> <product id = "5"> <name>product5</name> <weight>56</weight> <color>blue</color> </product> </products> for the above xml for all the color elements in the xml file, get the products.. in other words group the products based on there colors and then assosiate the products with a serial num . This serial id is in the series of 1,2,3... 1 for the first product that is of a perticular color, 2 for the next product and so on.. xsl i wrote.. <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <xsl:for-each select="//product/color"> <xsl:sort select="." data-type="text" order="descending"/> <xsl:number format="1" count="product"/> ...<xsl:value-of select="."/>..<xsl:value-of select="../name"/> <br></br> </xsl:for-each> </xsl:template> </xsl:stylesheet> with above xsl , I am getting an out put 3 ...red..product3 2 ...red..product2 5 ...blue..product5 4 ...blue..product4 1 ...blue..product1 which is quite understandable... But i wanted the output which should look like 1 ...red..product3 2 ...red..product2 1 ...blue..product5 2 ...blue..product4 3 ...blue..product1 that is for each of the colors of the same type i need the sequence number to start from 1 any suggestions and ideas will be most appreciated and helpful many thanks in advance bill.. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|

Cart



