0

我在从 php Web 服务反序列化肥皂 XML 时遇到问题

从 Web 服务返回的 XML 有一个标签<item xsi:type="xsd:">

基本上它的说法type=""会引发错误:

“指定的类型无法识别:name=':'”</p>

属性xsi:type="xsd:"有效吗?

我已经要求客户删除它,但他们说他们不能。

4

1 回答 1

0

属性xsi:type="xsd:"有效吗?

不它不是。(可选)属性xsi:type用于验证文档以指定该元素的类型。该属性明确设置该元素的类型。

但是xsd:无效的类型。因为它没有指定任何类型。它是一个未完成的类型的QName,它只包含xsd:前缀,后面没有类型的本地名称 。这是完全无效的,因此无法定义类型。

因为无法定义类型(您不能定义具有零长度local-name的类型),所以验证必须失败。

首先明确该元素必须是哪种类型,然后考虑首先创建您自己的 SOAP 客户端,该客户端能够处理这些(不完整、无效)规范。

告诉你的客户问题是什么,后果是什么,你不能在不重新协商开发的情况下及时偿还他们的技术债务,因为他们迄今为止告诉你的工作前提是错误的:他们没有用他们的网络服务给出一个有效的SOAP 响应。可能是他们到目前为止没有注意到,所以你有责任告诉他们他们有错。保重,祝你好运。

另见:

于 2013-07-21T08:32:54.427 回答