Jeg skal udtrykke følgende struktur i mit XML schema:
[type: del_af_bog]
Der skal være *præcis en* af følgende to elementer:
[Forfatter] eller [Redaktør]
Der skal være *en af hver* af følgende elementer:
[titel],[forlag],[år]
Der skal være *højst en af* følgende elementer:
[måned],[adresse],[sideantal],[note]
[/type]
Problemet er den første del, hvor der skal være præcis en af to mulige.
Jeg har forsøgt mig med:
<xsd:complexType name="inbookTypeAuthorEditor">
<xsd:choice>
<xsd:element ref="author" />
<xsd:element ref="editor" />
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="inbookType">
<xsd:all>
<xsd:element ref="inbookTypeAuthorEditor" />
<xsd:element ref="title"/>
<xsd:element ref="publisher"/>
<xsd:element ref="year"/>
<xsd:element ref="chapter" minOccurs="0"/>
<xsd:element ref="pages" minOccurs="0"/>
<xsd:element ref="volume" minOccurs="0"/>
<xsd:element ref="address" minOccurs="0"/>
<xsd:element ref="edition" minOccurs="0"/>
<xsd:element ref="month" minOccurs="0"/>
<xsd:element ref="note" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
-men får besked om at inbookTypeAuthorEditor ikke er defineret?!?
Yderligere er det ulovligt at have en <group> eller en <choice> direkte inde
i en <all>...
Nogle gode ideer?
Schemaet ligger på
http://www.itu.dk/people/kaj/ws/xmlbib.xsd
Og et tilsvarende dokument på
http://www.itu.dk/people/kaj/ws/result.xml
--
Mvh
Kenneth