1
0
下面的样式表适用于您的特定情况,但我怀疑您正在寻找更通用的样式表。我也相信有一个更简单的方法。
|
2
0
好的,这里有一个更好的方法
|
3
0
我认为,一旦您对XSLT遍历的工作原理有了合理的了解(希望我在您的另一个问题中回答了这个问题),这就变得非常简单了。 你有几个选择如何做到这一点。Darrell Miller的回答表明,您必须处理整个文档,并去掉您不感兴趣的元素。这是一种方法。 在进一步讨论之前,我得到的印象是,您可能无法完全“理解”XSLT中的上下文概念。这很重要,会让你的生活更简单。在XSLT中,任何时候都只有一个上下文节点。这是当前正在“处理”的节点(元素、属性、注释等)。在名为via xsl:select的模板中,选择的节点是上下文节点。因此,考虑到您的xml:
和
因此,当您以以下内容开始样式表时:
现在,在顶层模板中,您可能决定只处理alpha_底部节点。然后你可以写一个声明,比如:
这将遍历树并选择所有alpha_顶部元素,而不选择其他元素。 或者,您可以处理所有元素,只需忽略beta节点的内容:
(正如我在给您的另一封回复中提到的,没有选择属性的xsl:apply模板与使用相同 选择 '*). 这将忽略beta节点的内容,但会处理它的所有子节点(假设您有模板)。 因此,忽略输出中的元素基本上就是在select属性中使用正确的xpath语句。当然,您可能需要一个好的xpath教程:) |
4
0
这与示例中的空白行为不同,但这可能是不相关的。 |
Pjoern · 在XSLT中包装没有属性的节点组 6 年前 |
user2093335 · XSLT:基于现有属性值替换属性值 6 年前 |
Leth · 字符串串联functoid不将映射值返回到目标记录 6 年前 |
shawn · XSLT 3.0在应用模板中使用变量进行动态选择? 6 年前 |
user9238790 · 将XML转换为数据帧 6 年前 |
Vanessa · xsl:当两个节点相等时,显示第一个节点的子节点 6 年前 |
Adi · 并行读取大型XSLT字符串 6 年前 |
Brian Arthur · XSLT从另一个上下文获取信息 6 年前 |