2016-06-22 21 views
1

が有効なXSDを考える:このXSDに対して有効なXMLについてXMLスキーマ:XS内のminOccursとmaxOccursの使用方法:シーケンス

<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
<xs:element name="personinfo"> 
    <xs:complexType> 
    <xs:sequence maxOccurs="2"> 
     <xs:element name="firstname" type="xs:string" minOccurs="0" maxOccurs="1"/> 
     <xs:element name="lastname" type="xs:string"/> 
    </xs:sequence> 
    </xs:complexType> 
</xs:element> 
</xs:schema> 

を、<personinfo><lastname>続く<firstname>の最大2列を含める必要があります。私はminOccursmaxOccursからfirstnameを追加します。以下のXMLファイルの場合:validatorでまだ有効な理由は何ですか:

<personinfo> 
    <firstname>lalal</firstname> 
    <lastname>fwfw</lastname> 
    <firstname>lalal</firstname> 
    <lastname>fwfw</lastname> 
</personinfo> 

minOccursmaxOccursは、maxOccursxs:sequenceで上書きしないでください。

答えて

0

だけxs:sequenceによってmaxOccursを上書きしないminOccursmaxOccursますか?

いいえ、同封のxs:sequenceのオカレンス制約は、グループ自体がまとめて表示されたり、指定どおりに繰り返されることを意味します。個々の要素を含むことに関する発生の制約は、その要素の集合がどのように発生するかに関係なく、個々の要素に個別に影響します。

XSDには、それぞれfirstname(オプション)とlastname(必須)のシーケンスが1つまたは2つあります。

関連する問題