0
내 XML 태그의 제한 태그에서 중복 태그를 금지하는 방법은 무엇입니까? 내 XML 파일의 예를 들어 나는 두 로케일 태그를 가지고 있지만, 그것은 단지 하나 개의 태그해야태그를 고유하게 만드는 방법은 무엇입니까?
이 내 XML 파일입니다
<app:string name="firstName">
<app:restriction>
<app:regex>^\w*$</app:regex>
<app:type/>
<app:locale/>
<app:locale/>
</app:restriction>
</app:string>
이 문자열 태그 내 XSD입니다 :
<xs:element name="string">
<xs:complexType>
<xs:complexContent>
<xs:extension base="main:BaseType">
<xs:sequence>
<xs:element name="restriction" type="main:StringRestriction" minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="lang" type="main:LocaleTypes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="BaseType">
<xs:attribute name="name" type="main:nameType" use="required"/>
<xs:attribute name="readonly" type="xs:boolean" use="optional" default="true"/>
</xs:complexType>
<xs:complexType name="StringRestriction">
<xs:complexContent>
<xs:extension base="main:RestrictionBase">
<xs:sequence>
<xs:choice maxOccurs="1">
<xs:element type="xs:string" name="locale"/>
<xs:element type="xs:string" name="type"/>
<xs:element type="xs:string" name="regex"/>
<xs:element type="xs:string" name="maxLen"/>
<xs:element type="xs:string" name="minLen"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
예, 순차적으로 항목이 순차적으로 나타나야합니다. – Pooya
시퀀스는 정렬 된 목록이지만 선택되지 않은 list.so를 사용해야합니다. – Pooya
시퀀스를 사용했습니다.이 경우 xsd : sequence 요소를 xsd : all 요소로 대체 할 수 있습니다. xsd : all은 자식 요소가 임의의 순서로 나타날 수 있고 각 자식 요소가 0 번 또는 한 번 발생할 수 있음을 지정합니다. – user1187008