使用XSLT显示具有相同名称的多个属性

Ben

我对xml和xslt的世界比较陌生。我想要做的是使用xslt返回xml文件中生成的所有错误消息,每个父项下都有许多错误消息。

这是XML文件的示例:

   <progress_file>
        <read_leg>
            <info>Successfully read face ID 225</info>
            <info>successfully read face ID 226</info>
            <error>unable to read face ID 227</error>
            <error>unable to read face ID 228</error>
        </read_leg>
        <write_leg>
            <info>Successfully created face ID 225</info>
            <info>successfully created face ID 226</info>
            <error>unable to write face ID 227</error>
            <error>unable to write face ID 228</error>
        </write_leg>
    </progress_file>

使用的XSLT是:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
      <xsl:for-each select="progress_file/read_leg">
        <xsl:value-of select="error"/>
      </xsl:for-each>
      <xsl:for-each select="progress_file/write_leg">
        <xsl:value-of select="error"/>
      </xsl:for-each>
</xsl:template>
</xsl:stylesheet>

输出仅返回每个区域的第一个值。我认为这就是逻辑的含义,即“对于每个写脚,返回错误消息”,但这并不意味着它会检查是否存在多种情况。

我还没有看到具有相同名称的多个属性的任何地方,也没有遇到可以使用此属性的XSL元素,所以我有些困惑。关于这怎么可能的任何建议?

还有一个问题,是否可能在输出线之间出现断线?

谢谢。

埃罗·海伦纽斯(Eero Helenius)

这是一个选择:

样式表

<?xml version="1.0" encoding="ISO-8859-1"?>

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

  <!-- The XML entity for a line feed -->
  <xsl:variable name="linefeed" select="'&#10;'"/>

  <!-- Match the root node -->
  <xsl:template match="/">
    <!-- Apply templates for all <error> nodes. -->
    <xsl:apply-templates select="progress_file/read_leg/error | progress_file/write_leg/error"/>
  </xsl:template>

  <xsl:template match="error">
    <!-- Concatenate the value of the current node and a line feed. -->
    <xsl:value-of select="concat(., $linefeed)"/>
  </xsl:template>
</xsl:stylesheet>

输出量

unable to read face ID 227
unable to read face ID 228
unable to write face ID 227
unable to write face ID 228

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

xslt合并具有相同名称的多个节点

来自分类Dev

如何使用for循环在xslt中处理具有相同名称但属性值不同的xml标记

来自分类Dev

如何使用jquery或javascript获取具有相同名称属性的多个文件的值?

来自分类Dev

如何使用具有相同名称的“数据目标”属性创建多个弹出窗口

来自分类Dev

使用JavaScript显示和隐藏具有相同名称的多个项目的ID

来自分类Dev

具有相同名称的多个参数

来自分类Dev

具有相同名称的多个div

来自分类Dev

具有相同名称的多个输入

来自分类Dev

在同一范围内声明多个具有相同名称的XSLT变量

来自分类Dev

显示核心数据:如果属性具有相同名称,则显示一次

来自分类Dev

显示核心数据:如果属性具有相同名称,则显示一次

来自分类Dev

具有多个具有相同名称的字段的 POST

来自分类Dev

XSLT:递归合并具有相同名称的节点

来自分类Dev

如何为不同的标签声明多个具有相同名称的可样式化属性?

来自分类Dev

NUnit-具有相同名称的多个属性?链接到需求

来自分类Dev

jQuery添加多个具有相同名称的CSS属性不起作用

来自分类Dev

存在多个具有相同名称的属性时,在EL中指定范围

来自分类Dev

Ansible在XML文件中编辑具有相同名称的多个属性

来自分类Dev

存在多个具有相同名称的属性时,在EL中指定范围

来自分类Dev

NUnit-具有相同名称的多个属性?链接到需求

来自分类Dev

实体框架7:匿名类型不能具有相同名称的多个属性

来自分类Dev

LINQ查询中具有相同名称的多个属性出错

来自分类Dev

如何在 ASP.NET MVC 中保存多个具有相同名称属性的数据?

来自分类Dev

获取具有相同名称的所有属性

来自分类Dev

从具有相同名称的节点获取所有属性

来自分类Dev

在MVC中处理具有相同名称的多个动作

来自分类Dev

具有相同名称,域和路径的多个Cookie?

来自分类Dev

在Eclipse中导入具有相同名称的多个项目

来自分类Dev

XSD具有相同名称但类型不同的多个元素

Related 相关文章

  1. 1

    xslt合并具有相同名称的多个节点

  2. 2

    如何使用for循环在xslt中处理具有相同名称但属性值不同的xml标记

  3. 3

    如何使用jquery或javascript获取具有相同名称属性的多个文件的值?

  4. 4

    如何使用具有相同名称的“数据目标”属性创建多个弹出窗口

  5. 5

    使用JavaScript显示和隐藏具有相同名称的多个项目的ID

  6. 6

    具有相同名称的多个参数

  7. 7

    具有相同名称的多个div

  8. 8

    具有相同名称的多个输入

  9. 9

    在同一范围内声明多个具有相同名称的XSLT变量

  10. 10

    显示核心数据:如果属性具有相同名称,则显示一次

  11. 11

    显示核心数据:如果属性具有相同名称,则显示一次

  12. 12

    具有多个具有相同名称的字段的 POST

  13. 13

    XSLT:递归合并具有相同名称的节点

  14. 14

    如何为不同的标签声明多个具有相同名称的可样式化属性?

  15. 15

    NUnit-具有相同名称的多个属性?链接到需求

  16. 16

    jQuery添加多个具有相同名称的CSS属性不起作用

  17. 17

    存在多个具有相同名称的属性时,在EL中指定范围

  18. 18

    Ansible在XML文件中编辑具有相同名称的多个属性

  19. 19

    存在多个具有相同名称的属性时,在EL中指定范围

  20. 20

    NUnit-具有相同名称的多个属性?链接到需求

  21. 21

    实体框架7:匿名类型不能具有相同名称的多个属性

  22. 22

    LINQ查询中具有相同名称的多个属性出错

  23. 23

    如何在 ASP.NET MVC 中保存多个具有相同名称属性的数据?

  24. 24

    获取具有相同名称的所有属性

  25. 25

    从具有相同名称的节点获取所有属性

  26. 26

    在MVC中处理具有相同名称的多个动作

  27. 27

    具有相同名称,域和路径的多个Cookie?

  28. 28

    在Eclipse中导入具有相同名称的多个项目

  29. 29

    XSD具有相同名称但类型不同的多个元素

热门标签

归档