有xml,我从“球形真空”中得到它。它有一个带有属性的标签xsi:type:
<out:Declarant xsi:type="out:RequestAccount">
xml还有一个文件描述了这个xsd:
<xs:complexType name="RequestContact">
<xs:extension base="tns:BaseDeclarant">
<xs:sequence>
.................
</xs:sequence>
<xs:attribute name="Id" type="xs:string"/>
<xs:attribute name="xsi:type" type="xs:string"/>
</xs:extension>
这只是同样的问题<xs:attribute name="">- 它不能包含各种字符,例如破折号,即:
<xs:attribute name="name" type="xs:NCName"/>
它的类型是 = NCName,它不希望它name包含无效字符。如何摆脱这个困境?我不能要求他们给我正确的xml或自己更改所有传入的xml或为 xsd 编写我自己的命名空间或什么?告诉我好人。
该属性
xsi:type属于命名空间http://www.w3.org/2001/XMLSchema-instance。你不能在你的模式中声明它,但你可以允许一个元素包含来自这个命名空间的属性使用元素xsd:anyAttribute