Reputation: 183
<?xml version="1.0" encoding="UTF-8"?><rowset>
<Row>
<Column1>1381.00000</Column1>
<Column2>9851.00000</Column2>
<Column3>10.00000</Column3>
<Column4>130253.00000</Column4>
<Column5>8065.88235</Column5>
</Row> </rowset>
Some other xml have different number of columns like this,
<?xml version="1.0" encoding="UTF-8"?><rowset>
<Row>
<Column1>1551.00000</Column1>
<Column2>977.00000</Column2>
<Column3>9.00000</Column3>
</Row></rowset>
Here is something which i have tried, but which works for only xml records which has 3 columns, I want to make it dynamic
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<body>
<h2>Metric Validator</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Column1</th>
<th>Column2</th>
<th>Column3</th>
</tr>
<xsl:for-each select="rowset/Row">
<tr>
<td>
<xsl:value-of select="Column1" />
</td>
<td>
<xsl:value-of select="Column2" />
</td>
<td>
<xsl:value-of select="Column3" />
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Upvotes: 0
Views: 1064
Reputation: 337
...
<tr bgcolor="#9acd32">
<xsl:for-each select="rowset/Row[1]/*">
<th><xsl:value-of select="name()"/></th>
</xsl:for-each>
</tr>
<xsl:for-each select="rowset/Row">
<tr>
<xsl:for-each select="*">
<td><xsl:value-of select="."/></td>
</xsl:for-each>
</tr>
</xsl:for-each>
...
Upvotes: 1