列出 XML 文件中的每个节点
简单的情况...对于任何随机 XML 文件,我想创建它包含的每个节点的列表,但没有任何重复项!所以类似:
<root name="example">
<child id="1">
<grandchild/>
</child>
<child id="2"/>
<child id="3"/>
</root>
翻译为:
/root
/root/@name
/root/child
/root/child/@id
/root/child/grandchild
如何仅使用 XSLT 来做到这一点?
Simple situation... With any random XML file, I want to create a list of every node that it contains, but without any duplicates! So something like:
<root name="example">
<child id="1">
<grandchild/>
</child>
<child id="2"/>
<child id="3"/>
</root>
Is translated to:
/root
/root/@name
/root/child
/root/child/@id
/root/child/grandchild
How to do this, by just using XSLT?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
只是为了好玩,没有扩展功能。
输出:
编辑:XSLT/XPath 2.0 的更好示例。此 XPath 2.0 行:
Just for fun, without extension function.
Output:
Edit: Better example of XSLT/XPath 2.0. This XPath 2.0 line:
我自己也解决了!这样:
只有 48 行。 :-)
I solved it myself, too! This way:
Only 48 lines. :-)
这个转换(133行,其中许多被注释掉):
当应用于提供的 XML 文档时:
产生所需的正确结果:
This transformation (133 lines and many of them commented out):
when applied on the provided XML document:
produces the wanted, correct result: