2017-12-09 6 views
1

私はシンプルだが非常に重要な質問については疑問に思っている。XSDでは、オプションの親要素が発生した場合、その子は必須ですか?

私は、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つの要素すべてを持たなければなりません。たとえば、銀行口座番号を見逃すことはできません。

私の上記の理解が正しいかどうかを教えてください。

+0

明示的に分かりやすくするために、サブ要素に明示的に「minOccurs = 1」を追加したいと思うかもしれませんが、これはデフォルトであり、あなたはそれがなくてもあなたの望みを得るでしょう。 –

+0

はい、実際にはこれは私のXSDではありません。これは税務当局によって発行されたXSDです。私はERPからコンプライアンスXMLを提出しなければなりません。財務担当者の銀行口座を省略できるかどうか、代理人は一般的に私の提出に関連しています。私は財務担当者の有無にかかわらずXMLを提出できると思う傾向がありますが、提出書類に財務担当者が含まれていなければならないと判断したら、4つのサブ要素すべてを設定する必要があります。 – Fonolit

答えて

0

あなたの理解は正しいです:子供の選択性は、の現在のの選択性から独立しています。つまり、親が存在する場合は、オプションの親の必須子はでなければなりません。

関連する問題