<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.witscale.com" xmlns="http://www.witscale.com" elementFormDefault="qualified">
   <xsd:element name="QuestionBank">
      <xsd:complexType>
         <xsd:sequence>
            <xsd:element name="Question" minOccurs="1" maxOccurs="unbounded">
               <xsd:complexType>
                  <xsd:sequence>
                     <xsd:element name="Description" minOccurs="1" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice1" minOccurs="1" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice2" minOccurs="1" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice3" minOccurs="0" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice4" minOccurs="0" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice5" minOccurs="0" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Choice6" minOccurs="0" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Explanation" minOccurs="0" maxOccurs="1" type="xsd:string" />

                     <xsd:element name="Answer" minOccurs="1" maxOccurs="1">
                        <xsd:complexType>
                           <xsd:simpleContent>
                              <xsd:extension base="xsd:integer">
                                 <xsd:attribute name="multiple">
                                    <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                          <xsd:enumeration value="yes" />
                                          <xsd:enumeration value="no" />
                                       </xsd:restriction>
                                    </xsd:simpleType>
                                 </xsd:attribute>
                              </xsd:extension>
                           </xsd:simpleContent>
                        </xsd:complexType>
                     </xsd:element>

                     <xsd:element name="Exhibit" minOccurs="0" maxOccurs="1">
                        <xsd:complexType>
                           <xsd:simpleContent>
                              <xsd:extension base="xsd:string">
                                 <xsd:attribute name="hasDiagram" use="optional">
                                    <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                          <xsd:enumeration value="yes" />
                                          <xsd:enumeration value="no" />
                                       </xsd:restriction>
                                    </xsd:simpleType>
                                 </xsd:attribute>
                                 <xsd:attribute name="diagramUri" type="xsd:string" use="optional" />
                              </xsd:extension>
                           </xsd:simpleContent>
                        </xsd:complexType>
                     </xsd:element>
                  </xsd:sequence>

                  <xsd:attributeGroup ref="QuestionAttributes" />
               </xsd:complexType>
            </xsd:element>
         </xsd:sequence>

         <xsd:attributeGroup ref="QuestionBankAttributes" />
      </xsd:complexType>
   </xsd:element>

   <xsd:attributeGroup name="QuestionBankAttributes">
      <xsd:attribute name="subject" use="required" type="xsd:string" />

      <xsd:attribute name="moderator" type="emailAddress" use="required" />
   </xsd:attributeGroup>

   <xsd:attributeGroup name="QuestionAttributes">
      <xsd:attribute name="owner" type="emailAddress"  use="required"  />

      <xsd:attribute name="category" use="optional" type="xsd:string" />
   </xsd:attributeGroup>

   <xsd:simpleType name="emailAddress">
      <xsd:restriction base="xsd:string">
         <xsd:pattern value="[a-zA-z0-9]@[a-zA-z0-9]" />
      </xsd:restriction>
   </xsd:simpleType>
</xsd:schema>

