在XSD中,当可选的父元素出现时,它的子元素是否必需?

时间:2017-12-09 11:05:32

标签: xsd minoccurs

我一直想知道一个简单但非常重要的问题。

我有一个父元素是可选的,因为minOccurs =" 0"但是它的子元素没有定义任何minOccurs或maxOccures属性。

我是否正确,如果父元素出现,其所有子元素都是必需元素?

我的示例代码如下所示:

name="FiscalRepresentativeInfo" minOccurs="0">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="FiscalRepresentativeTaxRegistrations" type="MandatoryTaxNumbersType"></xs:element>
            <xs:element name="FiscalRepresentativeName" type="LongStringType"></xs:element>
            <xs:element name="FiscalRepresentativeAddress" type="AddressType"></xs:element>
            <xs:element name="FiscalRepresentativeBankAccountNumber" type="BankAccountNumberType"></xs:element>
        </xs:sequence>
    </xs:complexType>
</xs:element>

现在,我的实际问题是:

  1. 财务代表信息是可选的,XML实例可能包含也可能不包含它。
  2. 重点是:如果XML中有财务代表信息,它必须包含所有4个元素。例如,不可能错过银行帐号。
  3. 请告诉我上述理解是否正确。

1 个答案:

答案 0 :(得分:0)

您的理解是正确的:儿童的选择性与现在父母的选择性无关。也就是说,如果父母存在,则可选父的必修子女必须