当前位置:  开发笔记 > 编程语言 > 正文

有没有办法在XSL转换期间忽略名称空间?

如何解决《有没有办法在XSL转换期间忽略名称空间?》经验,为你挑选了1个好方法。

在处理XSL转换的服务器上禁用了命名空间检查(因为编写XSL的人不了解命名空间).我必须对XSL进行更改,但我无法测试它,因为没有定义任何名称空间,即.

代替

 ...

它有

 ...

所以它与XML中的任何元素都不匹配,因为它们都是使用命名空间限定的.

我无法在服务器上进行测试,因为我无法访问它.修复XSL是没有用的,因为必须启用名称空间检查,这将打破所有其他转换.

所以我需要做的是找到一种在XSL转换期间忽略名称空间的方法.我可以访问MSXML,XMLSpy(在这里找不到选项),如果我真的需要,我可以使用C#或类似语言编写代码.

作为最后的手段,我可​​以编写一些正则表达式,但我真的不想走这条路,特别是在处理XML时...

在回复有关更多细节的评论时:

它是一个Windows 2003虚拟服务器,运行一个Methode Servlet实例(www.eidosmedia.com).我不知道这个servlet用于执行XSL转换的技术.他们忽略了名称空间,因为最初编写XSL的人不理解它们,并且没有将它们包含在XSL中.所以现在所有的XSL文件(数百个)都没有名称空间.

将所有这些文件一次性修复可能是一个有趣的挑战,但这不是我现在所需要的(并且由于涉及的测试数量,部门经理无论如何都不会同意它).我想知道的是,是否有可用的工具(或技术)允许我按原样获取这些XSL文件,并使用它们转换相应的XML文档而不考虑命名空间.在我看来,必须存在一个工具,因为编写原始XSL的人必须使用类似的东西来自己测试转换.



1> Tomalak..:

可以执行转换以在"实际"转换之前从输入中删除所有命名空间.但是......我不确定你是否应该这样做.感觉很难看.



  
    
      
    
    

  
    
      
    
    



原始答案:

这是一个选择吗?

...

(正如评论所示 - 它不会)

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有