【发布时间】:2017-02-08 03:47:29
【问题描述】:
我有一个具有以下树结构的 xml 文件:
<foo attr1=""/>
<foo2 num="1"/>
<foo2 num="2"/>
<foo2 num="3"/>
<foo2 num="4"/>
<foo attr1=""/>
<foo2 num="1"/>
...
如您所见,元素 foo2 不是 foo 的子元素,但我想 将 foo2 num="1" thru num="4" 与第一个 foo 出现分组。没有 其中没有一个我可以用作参考的属性...
有什么方法可以用 xsl 实现这一点吗?
我已经成功地轻松地遍历了所有 foo 的出现(使用 xsl:for-each 属性),但棘手的部分是为每个 foo 循环包含以下 foo2 元素。
编辑: 让我们假设 attr 有一个随机值,例如:
<foo attr1="abc"/>
<foo2 num="1"/>
<foo2 num="2"/>
<foo2 num="3"/>
<foo2 num="4"/>
<foo attr1="def"/>
<foo2 num="1"/>
我想要做的是将 abc 和以下 foo 组合在一个表中,以便:
+--------+-----+
| abc | def |
| 1 | 1 |
| 2 | |
| 3 | |
| 4 | |
+--------------+
不,很遗憾它不支持 xslt 2.0。
【问题讨论】:
-
1. 您的问题并不完全清楚。请向我们展示预期的输出。 2. 您的处理器是否支持 XSLT 2.0?
-
@michael.hor257k 我刚刚更新了我的帖子。