gpt4 book ai didi

xml - 尽管 minOccurs=0,但仍需要 XSD 元素

转载 作者:行者123 更新时间:2023-12-04 18:06:03 31 4
gpt4 key购买 nike

我是 XSD 的新手,对当前的行为感到困惑,我不确定我错过了什么。在 VB 中构建 WCF 服务时,我试图创建一些可选元素。我定义了 2 个元素,我希望它们是可选的,无论它们是否是 Web 服务请求的一部分,我都不在乎。但是,我不断收到两者都需要的错误。我错过了一些明显的东西吗? Sequence 和 All 都应该适用于 minOccurrs,以及引用。

在我的研究中,我知道我要使用 minOccurs="0"如下引自 w3Schools

MinOccurs defined...

The "minOccurs" indicator specifies the minimum number of times an element can occur.

<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="full_name" type="xs:string"/>
<xs:element name="child_name" type="xs:string"
maxOccurs="10" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>

The example above indicates that the "child_name" element can occur a minimum of zero times and a maximum of ten times in the "person" element.

有了这个,我定义了我的 ThirdPartyMessage 如下:以拥有 ExternalID 和 SecondID 为目标(不控制名称)

<xs:element name="ThirdPartyMessage">
<xs:complexType>
<xs:all>
<xs:element ref="Subject"/>
<xs:element ref="Message"/>
<xs:element ref="RequestType" />
<xs:element ref="ExternalID" minOccurs="0"/>
<xs:element ref="SecondID" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>

以及在

  <xs:complexType name="MessageHeaderType">
<xs:sequence>
<xs:element name="RqUID" type="UUID"/>
<xs:element name="AsyncRqUID" type="UUID" minOccurs="0"/>
<xs:element name="PartnerKey" type="Identifier" minOccurs="0"/>
<xs:element ref="ExternalID" minOccurs="0" maxOccurs="1"/>
<xs:element ref="SecondID" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>

定义为

  <xs:element name="ExternalID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

<xs:element name="SecondID">
<xs:simpleType>
<xs:restriction base="Integer">
</xs:restriction>
</xs:simpleType>
</xs:element>

最佳答案

全局声明不能包含属性 minOccurs、maxOccurs 或 use。您可能需要引用此链接。 http://www.w3.org/TR/xmlschema-0/#OccurrenceConstraints

关于xml - 尽管 minOccurs=0,但仍需要 XSD 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26591310/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com