gpt4 book ai didi

xml - 将 xslt 修改为与命名空间无关

转载 作者:数据小太阳 更新时间:2023-10-29 01:48:07 25 4
gpt4 key购买 nike

我创建了一个 XSLT 来处理特定的 xml 文档。但是,现在我们的一些文档(但不是所有文档)都引入了 namespace 。我想对这些文档使用相同的 XSLT,但是我在将样式表修改为与 namespace 无关时遇到了问题。

之前有人建议将我的 xpaths 修改为 *[local-name()="ElementName"] ,但是考虑到我们已经制作了样式表,这是非常耗费人力的。

此外,我知道我可以设置 xpath-default-namespace到特定的命名空间,但如前所述,我不能简单地将它设置为 #all 或可能的命名空间列表。我正在寻找一种更有效的解决方案,并且可以使用 Saxon 处理器的扩展功能。有任何想法吗?谢谢。

最佳答案

您是否考虑过预处理 XML 文档?

您可以删除所有命名空间(注意可能的冲突),然后使用现有的 XSL 转换对其进行处理。

这种方法的优点是您根本不必修改 XSLT。它保持可读性(*[local-name()='frob'] 看起来很糟糕)和可维护性。

关于xml - 将 xslt 修改为与命名空间无关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/507847/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com