【发布时间】:2018-11-05 14:16:40
【问题描述】:
我收到一份具有以下结构的文档:
<Postnumre xmlns="http://Customer.Vejregister.Schemas.Vejregister_PostNr_XML.PostNr_XML">
<Postnr xmlns="http://Customer.Vejregister.Schemas.Vejregister_PostNr_XML.PostNr_XML">
<Sekvensnummer>sekvensnummer</Sekvensnummer>
<Tidspunkt>tidspunkt</Tidspunkt>
<Operation>operation</Operation>
<PostNr>nr</PostNr>
<PostnrNavn>navn</PostnrNavn>
<Stormodtager>stormodtager</Stormodtager>
</Postnr>
<Postnr xmlns="http://Customer.Vejregister.Schemas.Vejregister_PostNr_XML.PostNr_XML">
<Sekvensnummer>1</Sekvensnummer>
<Tidspunkt>2014-08-20T11:17:50.644Z</Tidspunkt>
<Operation>insert</Operation>
<PostNr>0800</PostNr>
<PostnrNavn>Høje Taastrup</PostnrNavn>
<Stormodtager>1</Stormodtager>
</Postnr>
</Postnumre>
如你所见,它在根节点和所有子节点上都有相同的命名空间,没有前缀。
在我的架构上,我已将 targetNamespace 设置为上述命名空间,但是当根据架构验证此文档的实例时,我收到返回“验证实例失败”的消息。
是否可以将我的架构配置为允许此类文档?我不确定它为什么会失败,因为我使用的是相同的命名空间。
架构代码:
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns="http://Customer.Vejregister.Schemas.Vejregister_PostNr_XML.PostNr_XML" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" targetNamespace="http://Customer.Vejregister.Schemas.Vejregister_PostNr_XML.PostNr_XML" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Postnumre">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Postnr">
<xs:complexType>
<xs:sequence>
<xs:element name="Sekvensnummer" type="xs:string" />
<xs:element name="Tidspunkt" type="xs:string" />
<xs:element name="Operation" type="xs:string" />
<xs:element name="PostNr" type="xs:string" />
<xs:element name="PostnrNavn" type="xs:string" />
<xs:element name="Stormodtager" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
【问题讨论】:
-
嗨,莱思。我的回答是否有助于解决您的问题?
标签: xml validation schema biztalk