Subject: Re: [xsl] FW: Creating Table problem From: "cking" <cking@xxxxxxxxxx> Date: Mon, 23 Aug 2004 16:39:56 +0200 |
<xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" /> <xsl:template match="/Report"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title><xsl:value-of select="DataRangeX/@description"/></title> </head> <body> <table border="1"> <xsl:apply-templates select="DataRangeX"/> <xsl:apply-templates select="DataRangeY"/> </table> </body> </html> </xsl:template> <xsl:template match="DataRangeX"> <tr> <th><xsl:value-of select="@description"/></th> <xsl:apply-templates select="RangeValue"/> </tr> </xsl:template> <xsl:template match="DataRangeX/RangeValue"> <th title="{../@type}"><xsl:value-of select="."/></th> </xsl:template> <xsl:template match="DataRangeY"> <xsl:apply-templates select="RangeValue"/> </xsl:template> <xsl:template match="DataRangeY/RangeValue"> <xsl:variable name="index" select="position()"/> <tr> <td title="{../@name}"><xsl:value-of select="."/></td> <xsl:for-each select="/Report/NumericData/Column"> <xsl:apply-templates select="HDElement[$index]"/> </xsl:for-each> </tr> </xsl:template> <xsl:template match="HDElement"> <td><xsl:value-of select="."/></td> </xsl:template> </xsl:stylesheet> Cheers, Anton Triest ----- Original Message ----- From: "Bhadresha, Avinash (London)" <Avinash_Bhadresha@xxxxxx> To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> Sent: Monday, August 23, 2004 1:22 PM Subject: [xsl] FW: Creating Table problem Hi, I need to create a table from the following XML. <Report> <DataRangeX description="Inflation Curve" type="Percentage"> <RangeValue type="String">3.00% </RangeValue> <RangeValue type="String">0.00% </RangeValue> <RangeValue type="String">-3.00% </RangeValue> </DataRangeX> <DataRangeY name="Interest Rates"> <RangeValue>3.00%</RangeValue> <RangeValue>0.00%</RangeValue> <RangeValue>-3.00%</RangeValue> </DataRangeY> <NumericData> <Column> <HDElement>1</HDElement> <HDElement>2</HDElement> <HDElement>3</HDElement> </Column> <Column> <HDElement>4</HDElement> <HDElement>5</HDElement> <HDElement>6</HDElement> </Column> <Column> <HDElement>7</HDElement> <HDElement>8</HDElement> <HDElement>9</HDElement> </Column> </NumericData> </Report> The tAble should then have the X Range values as the header and the Y Range values labelling the rows. If possible the header should have the 'Inflation Curver' title on top of it. I'd really appreciate some help, I'm completely going in circles as to trying to come up with a solution.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] FW: Creating Table problem, Bhadresha, Avinash ( | Thread | [xsl] xalan, Ritesh Punamiya |
[xsl] Antwort: Re: [xsl] Grouping h, Daniel Geske | Date | [xsl] Namespace being carried over, James Paul |
Month |