使用IBM Processor for XSLT 2.0存在XML验证/命名空间问题
我从第三方供应商处收到以下XML消息。我无法控制传入的消息。我已经将它缩减为最简单的形式,同时仍然产生错误。XML消息:使用IBM Processor for XSLT 2.0存在XML验证/命名空间问题,xml,xslt,xslt-2.0,Xml,Xslt,Xslt 2.0,我从第三方供应商处收到以下XML消息。我无法控制传入的消息。我已经将它缩减为最简单的形式,同时仍然产生错误。XML消息: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header/> <soap:Body/> </soap:Envelope> 即使我无法控制传入的消息,是否有任何方法使此通过验证?如果我能控制传入的消息,我
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body/>
</soap:Envelope>
即使我无法控制传入的消息,是否有任何方法使此通过验证?如果我能控制传入的消息,我会这样做,它会工作得很好:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/
http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body/>
</soap:Envelope>
我不知道IBM XSLT 2.0处理器的详细信息,但从症状来看,源文档上的验证阶段似乎无法访问样式表中使用xsl:import schema声明的模式;您必须在文档中查找其他方法来告诉验证过程在哪里可以找到合适的模式。我不知道IBM XSLT 2.0处理器的详细信息,但从症状来看,源文档上的验证阶段似乎无法访问样式表中使用xsl:import schema声明的模式;您必须在文档中查找其他方法来告诉验证过程在何处找到合适的模式。我没有IBM的XSLT 2.0处理器,但提供的转换可以通过以下三种XSLT 2.0处理器来执行:Saxon 4.6EE、AltovaXML、XQSharp(XmlPrime)。我没有IBM的XSLT 2.0处理器,但是所提供的转换可以通过以下三种XSLT2.0处理器来执行:Saxon 4.6EE、AltovaXML、XQSharp(XmlPrime)。
cvc-elt.1.a: Cannot find the declaration of element 'soap:Envelope'
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/
http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body/>
</soap:Envelope>