Steff: XML Schema, Abhängigkeit eines Elements zu einem Untergeordnetem

Hallo,

meine xsd-Datei sieht wie folgt aus:

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'>
<!--Ebene 0: Frageboegen  -->
<xs:element name="frageboegen">
 xs:complexType
  xs:sequence
  <!--Ebene 1: Fragebogen, maxOccurs: beliebig oft innerhalb verwendbar  -->
   <xs:element name="fragebogen" maxOccurs="unbounded">
    xs:complexType
     xs:sequence
     <!--Ebene 2: Topic  -->
      <xs:element name="topic" maxOccurs="unbounded">
       xs:complexType
        xs:sequence
        <!--Ebene 3: Fragen  -->
         <xs:element name="frage" maxOccurs="unbounded">
          xs:complexType
           xs:sequence
           <!--Ebene 4: Antwortenoptionen, minOccurs: bei ofenen Fragen gibt es keine Antwortoptionen, deshalb "='0'"-->
            <xs:element name="antwortoption" maxOccurs="unbounded" minOccurs="0">
             xs:complexType
              xs:sequence
              </xs:sequence>
              <!--Attribute zum Element Antwortoptionen, use: notwendiges Attribut-->
              ......
             </xs:complexType>
            </xs:element>
           </xs:sequence>
           <!--Attribute zum Element Frage-->
           ......
           <xs:attribute name="Typ" use="required">
           <!--Einschraenkung des Typs auf die Werte 1-7-->
            xs:simpleType
             <xs:restriction base="xs:integer">
              <xs:pattern value="[1-7]"/>
             </xs:restriction>
            </xs:simpleType>
            </xs:attribute>
             .....
           </xs:complexType>
         </xs:element>
        </xs:sequence>
        <!--Attribute zum Element Topic-->
         .....
       </xs:complexType>
      </xs:element>
     </xs:sequence>
     <!--Attribute zum Element Fragebogen-->
      .....
    </xs:complexType>
   </xs:element>
  </xs:sequence>
  <!--Attribute zum Element Frageboegen -->
   ....
 </xs:complexType>
</xs:element>
</xs:schema>

Es geht um folgende Stelle:

<!--Attribute zum Element Frage-->
           ......
           <xs:attribute name="Typ" use="required">
           <!--Einschraenkung des Typs auf die Werte 1-7-->
            xs:simpleType
             <xs:restriction base="xs:integer">
              <xs:pattern value="[1-7]"/>
             </xs:restriction>
            </xs:simpleType>
            </xs:attribute>

bzw.

<!--Ebene 4: Antwortenoptionen, minOccurs: bei ofenen Fragen gibt      es keine Antwortoptionen, deshalb "='0'"-->
            <xs:element name="antwortoption" maxOccurs="unbounded" minOccurs="0">

Frage: Kann ich anhand der Werte (1-7) sagen: wenn Wert = 1, dann <xs:element name="antwortoption" maxOccurs="unbounded" minOccurs="1">

wenn Wert= 4, <xs:element name="antwortoption" maxOccurs="0"> ?

Hintergrund: bei offenen Fragen gibt es keine Antwortoptionen, nur Textfelder für Freitexte...

Das ganze funktioniert zwar mit <xs:element name="antwortoption" maxOccurs="unbounded" minOccurs="0">

aber ist nicht sehr clever gelöst...

LG Steff