XSD
Hvordan får jeg nedenstående stump lavet om til lovlig XSD (XML Schema)? Jeg tror, at det fremgår, hvad det er jeg gerne vil. En flad complexType kaldet inbook, med en række elementer. Jeg vil også gerne høre om man kan lave det på en smart(ere) måde, når jeg skal bruge mindst en af chapter og pages og evt begge.--Bjarke
<xs:complexType name="inbook">
<!-- author or editor -->
<xs:choice>
<xs:element name="author" type="author"/>
<xs:element name="editor" type="editor"/>
</xs:choice>
<!-- chapter and/or pages -->
<xs:choice>
<xs:complexType>
<xs:element name="chapter" type="chapter"/>
<xs:element name="pages" type="pages"/>
</xs:complexType>
<xs:element name="chapter" type="chapter"/>
<xs:element name="pages" type="pages"/>
</xs:choice>
<xs:all>
<!-- required -->
<xs:element name="title" type="title"/>
<xs:element name="publisher" type="publisher"/>
<xs:element name="year" type="year"/>
<!-- optional -->
<xs:element name="volume" type="volume" minOccurs="0"/>
<xs:element name="series" type="series" minOccurs="0"/>
<xs:element name="address" type="address" minOccurs="0"/>
<xs:element name="edition" type="edition" minOccurs="0"/>
<xs:element name="month" type="month" minOccurs="0"/>
<xs:element name="note" type="note" minOccurs="0"/>
<xs:element name="key" type="key" minOccurs="0"/>
</xs:all>
<xs:attribute name="citationkey" type="citationkey" use="required"/>
</xs:complexType>