我可能错过了Saxon上一些明显的配置选项,但这是我的问题:
我有一个没有命名空间声明的xml文件input.xml。 我有一个xsd架构,schema.xsd与mynamespace命名空间相关联。 我想使用Saxon和schema.xsd文件验证input.xml文件,就好像我的input.xml文件的根元素在mynamespace命名空间中一样? 要以不同的方式提问,我想添加默认的命名空间声明xmlns =" mynamespace"在input.xml的根元素中,但没有在Java中打开它,仅用于验证目的。 可能吗 ? Saxon中是否有任何配置选项允许声明要验证的xml文件的默认命名空间?
答案 0 :(得分:1)
是的,Saxon有一个将无命名空间文档转换为命名空间文档的工具:它被称为XSLT。
如果你想要超高效率,你可以编写一个更改名称空间的SAX过滤器,并将此过滤器放入模式验证器前面的处理管道中。