2016-04-04 3 views
1

Kann ich maxOccurs="0" verwenden?Wie kann sichergestellt werden, dass ein Element in XSD nicht existiert?

Beispiel:

<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="0"/> 
    </xs:sequence> 
    </xs:complexType> 
</xs:element> 

Haben Sie einen besseren Weg dafür?

+1

Es ist umgekehrt. In XSD kann nichts erscheinen, wenn Sie es nicht ausdrücklich zulassen. Es gibt keine Notwendigkeit, die Millionen von Dingen aufzuzählen, die nicht erlaubt sind. –

+0

Sie haben Recht. Ich habe gerade gelernt, und es ist mächtiger als DTD, wo ich diese Art von Verhalten nicht ausdrücken konnte. –

Antwort

2

Nun, solange minOccurs="0", könnten Sie maxOccurs="0" gesetzt, aber häufiger, würden Sie einfach das Element weglassen zusammen, damit er nicht mit:

<xs:element name="person"> 
    <xs:complexType> 
    <xs:sequence> 
     <xs:element name="full_name" type="xs:string"/> 
    </xs:sequence> 
    </xs:complexType> 
</xs:element> 
Verwandte Themen