XSLT Stlesheet选项卡中的XML

XSLT Stlesheet选项卡中的XML,xslt,Xslt,我有个问题。我在xslt样式表中创建了一个表。现在我不知道如何在上面的表中只放一个单元节点,然后在下面放所有的函数节点。第二,第三。。。单位节点我要两个表都放在下面 我的dropbox中的图片示例(我没有足够的stckoverflow点) DERTLP0350 123456 镇压 自动的 T#3s 2014-12-15-14:11:10.298 12345678 真的 真的 压制 反击试验 T#15s 真的 错误的 2014-12-15-14:11:11.179 123456 镇压 自动的

我有个问题。我在xslt样式表中创建了一个表。现在我不知道如何在上面的表中只放一个单元节点,然后在下面放所有的函数节点。第二,第三。。。单位节点我要两个表都放在下面

我的dropbox中的图片示例(我没有足够的stckoverflow点)


DERTLP0350
123456
镇压
自动的
T#3s
2014-12-15-14:11:10.298
12345678
真的
真的
压制
反击试验
T#15s
真的
错误的
2014-12-15-14:11:11.179
123456
镇压
自动的
T#3s
2014-12-15-14:11:10.298
12345678
真的
错误的
压制
反击试验
T#15s
真的
错误的
2014-12-15-14:11:11.179

这非常令人困惑,尤其是因为图片似乎与示例输入不匹配。我建议你先把注意力集中在正确的结构上。尝试以下方法作为起点:

XSLT1.0

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>

<xsl:template match="/">
    <html>
        <body>
            <xsl:apply-templates select="PLC_LOG/Unit"/>
        </body>
    </html>
</xsl:template>

<xsl:template match="Unit">
    <table border="1">
        <thead>
            <tr>
                <th colspan="7">TestUNIT</th>
            </tr>
            <tr>
                <th>Name</th>
                <th>Description</th>
                <th>Message</th>
                <th>MaxExecutionTime</th>
                <th>Timestamp</th>
                <th>TestFinish</th>
                <th>Result</th>
            </tr>
            <tr>
                <td><xsl:value-of select="sName"/></td>
                <td><xsl:value-of select="sDescription"/></td>
                <td><xsl:value-of select="Line"/></td>
                <td><xsl:value-of select="tMaxExecutionTime"/></td>
                <td><xsl:value-of select="Timestamp"/></td>
                <td><xsl:value-of select="bFinish"/></td>
                <td><xsl:value-of select="bResult"/></td>
            </tr>
        </thead>
        <tbody>
            <tr>
                <th colspan="7">TestFunktion</th>
            </tr>   
            <tr>
                <xsl:for-each select="Funktion[1]/*">
                    <th><xsl:value-of select="local-name()"/></th>
                </xsl:for-each>
            </tr>   
            <xsl:apply-templates select="Funktion"/>
        </tbody>
    </table>
</xsl:template>

<xsl:template match="Funktion">
    <tr>
        <xsl:for-each select="*">
            <td><xsl:value-of select="."/></td>
        </xsl:for-each>
    </tr>   
</xsl:template>

</xsl:stylesheet>

测试单元
名称
描述
消息
最大执行时间
时间戳
测试完成
结果
测试功能
一旦获得了所需的表结构和内容,就可以根据需要添加CSS样式