根据另一个属性从一个属性输出内容

时间:2014-01-07 16:59:11

标签: xml xslt

如果SDBTABLE等于MYTABLE,我正在尝试生成一个仅包含SDBTABLE和TNEWDATA内容的html表格。这是我的xml文件的示例。将有数千个具有不同SDBTABLE值的ROW节点。

<RESULTS>
    <ROW>
        <COLUMN NAME="ID"><![CDATA[15310774]]></COLUMN>
        <COLUMN NAME="SUSERNAME"><![CDATA[SYSTEM]]></COLUMN>
        <COLUMN NAME="DCREATED"><![CDATA[13-12-17 09:01:30]]></COLUMN>
        <COLUMN NAME="SACTIONTYPE"><![CDATA[INSERT]]></COLUMN>
        <COLUMN NAME="SDBTABLE"><![CDATA[MYTABLE]]></COLUMN>
        <COLUMN NAME="TDATAORIGINAL"><![CDATA[]]></COLUMN>
        <COLUMN NAME="TNEWDATA"><![CDATA[VALUE1 = 36387 VALUE2 = '14600007515'
    VALUE3 = '20470361'
    VALUE4 = '22023453499'
    VALUE5 = null
    VALUE6 = null
    VALUE7 = null
    VALUE8 = null
    VALUE9 = '000034795'
    ]]></COLUMN>
        <COLUMN NAME="TWHERE"><![CDATA[]]></COLUMN>
    </ROW>
</RESULTS>

这是我的许多xsl尝试之一。

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
 <html>
  <head>
   <title>MYTABLE</title>
  </head>
  <body>
   <table border="1">
   <tr>
    <th>TABLE</th>
    <th>DATA</th>
   </tr>
   <xsl:for-each select="RESULTS/ROW">
    <tr>
    <td><xsl:value-of select="COLUMN/@NAME='SDBTABLE'"/></td>
    <td><xsl:value-of select="COLUMN/@NAME='TNEWDATA'"/></td>
    </tr>
   </xsl:for-each>
   </table>
  </body>
 </html>
</xsl:template>

除了在第一个位置获得结果之外,我还想使用来自TNEWDATA的值的其他列来扩展表格。我希望能够指出应该添加的值,如VALUE1,VALUE2和VALUE9。

提前致谢

0 个答案:

没有答案