<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <!-- question contains plain text, 'label' attribute required -->
  <xs:element name="question">
    <xs:complexType>
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="label" type="xs:string" use="required"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>

  <!-- sections may contain any number of sections and questions -->
  <!-- must have a label -->
  <xs:element name="section">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="section"/>
        <xs:element ref="question"/>
      </xs:choice>
      <xs:attribute name="label" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>

  <!-- faq can contain any number of sections and questions -->
  <xs:complexType name="faqType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="section"/>
      <xs:element ref="question"/>
    </xs:choice>
  </xs:complexType>

  <xs:element name="faq" type="faqType"/>
</xs:schema>

