Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
特定XML格式的XSLT_Xml_Xslt - Fatal编程技术网

特定XML格式的XSLT

特定XML格式的XSLT,xml,xslt,Xml,Xslt,我试图创建一个XSL来更好地显示由组织内的流程自动创建的XML文档 我正在尝试渲染它,以便开发人员可以引用其中的信息。 很抱歉,我不熟悉XSLT,并且尝试将教程应用到我的场景中 理想情况下,在我的第一次循环中,我将尝试列出/DCXT/ATRs/ATR节点及其属性值。我将从那里取得进展 现在,使用这个XLST和chrome(通过适当的命令打开以允许本地xsl文件)可以得到的只是标题文本和列标题 我进入了一个没有值的行 任何帮助都将不胜感激 XML格式如下所示: <?xml version="

我试图创建一个XSL来更好地显示由组织内的流程自动创建的XML文档

我正在尝试渲染它,以便开发人员可以引用其中的信息。 很抱歉,我不熟悉XSLT,并且尝试将教程应用到我的场景中

理想情况下,在我的第一次循环中,我将尝试列出/DCXT/ATRs/ATR节点及其属性值。我将从那里取得进展

现在,使用这个XLST和chrome(通过适当的命令打开以允许本地xsl文件)可以得到的只是标题文本和列标题

我进入了一个没有值的行

任何帮助都将不胜感激

XML格式如下所示:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="ques.xsl"?>

<DCXT attr1="xxx" attr2="yyyy" attr3="zzzz">
    <Desc>Text description</Desc>
    <dbc>
        <drv>text for drv</drv>
        <prm/>
        <hsNode>text for hsNode</hsNode>
        <ptNode>text for ptNode</ptNode>
        <sName>text for sname</sName>
        <prd/>
    </dbc>
    <DSPs attr4="aaaa" attr5="1" attr3="bbb">
        <dsp attr6="1" attr7="true" attr8="1">
            <Desc>text for desc</Desc>
        </dsp>
        <!--... multiple 'Dsp' nodes defined defined ...-->
    </DSPs>
    <ATRs>
        <ATR attr9="true" attr10="text for attr">
            <FRs>
                <FR attr11="xxx" attr12="text for attr">
                    <MPs>
                        <MP attr13="xxx" attr14="yyyy"/>
                        <!-- .... multiple MP nodes defined -->
                    </MPs>
                </FR>
                <!--... multiple FR nodes defined ...-->
            </FRs>
            <DPY>
                <RDFs>
                    <SOF attr15="xxx" attr16="0"/>
                </RDFs>
                <BFRs>
                    <sof attr17="xxx" attr18="0"/>
                </BFRs>
            </DPY>
        </ATR>
        <!-- multiple ATR nodes defined -->
    </ATRs>
    <!-- more nodes defined at this level but removing for brevity-->
</DCXT>

文本描述
drv的文本
hsNode的文本
ptNode的文本
sname文本
描述文本
我的文本XSL如下

<?xml version="1.0"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
    <h2>My Text XSL</h2>
    <table border="1">
      <tr>
        <th>attr9</th>
        <th>attr10</th>
      </tr>
      <xsl:for-each select="/DCXT">
        <tr>
          <td><xsl:value-of select="attr9"/></td>
          <td><xsl:value-of select="attr10"/></td>
        </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

我的文本XSL
属性9
属性10

您的文本说您要处理
/DCXT/ATRs/ATR
,所以我将
更改为
,然后在内部使用
@属性名
,即更改

     <td><xsl:value-of select="attr9"/></td>
      <td><xsl:value-of select="attr10"/></td>



更详细地说明问题的具体内容以及您遇到的问题将大大改进您的问题,这将(希望)为您的问题找到答案谢谢。问题是我的表中没有任何行。虽然我在select语句中确实有错误的导航路径,但这是一个输入错误,因为我之前已经尝试过了。真正的问题是,我没有在属性名前面包含“@”。谢谢你帮我解答这样一个新问题。
     <td><xsl:value-of select="@attr9"/></td>
      <td><xsl:value-of select="@attr10"/></td>