<?xml version="1.0" encoding="utf-8"?>
<xsd:schema id="ClassificationTables" targetNamespace="http://www.mdesystems.co.uk/xml/schema/ClassificationTables.xsd" elementFormDefault="qualified" xmlns="http://www.mdesystems.co.uk/xml/schema/ClassificationTables.xsd" xmlns:mstns="http://www.mdesystems.co.uk/xml/schema/ClassificationTables.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  
  <xsd:complexType name="ClassificationRowType">
    <xsd:sequence>
      <xsd:element name="Round_ID" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>The Round ID Value, please refer to the following document http://www.mdesystems.co.uk/xml/data/rounds.xml</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Score" maxOccurs="1">
        <xsd:annotation>
          <xsd:documentation>The minimum score required to attain this grade</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleType>
          <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="0" />
            <xsd:maxInclusive value="1440" />
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="AgeGroup" maxOccurs="1" type="enmAgeGroupType">
        <xsd:annotation>
          <xsd:documentation>The Agegroup this row applies to</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Gender" maxOccurs="1" type="enmGender">
        <xsd:annotation>
          <xsd:documentation>The gender this entry applies to.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Bowstyle" maxOccurs="1" type="enmBowstyleType">
        <xsd:annotation>
          <xsd:documentation>The Bowstyle this row applies to</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="ClassificationGrade" maxOccurs="1" type="xsd:int">
        <xsd:annotation>
          <xsd:documentation>The ClassificationGrades ID.  This should match the grades id listed within the classificationGradeType id within this document</xsd:documentation>
        </xsd:annotation>
       </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="ClassificationTableType">
    <xsd:sequence>
      <xsd:annotation>
      </xsd:annotation>
      <xsd:element name="ClassificationRow" type="ClassificationRowType" maxOccurs="unbounded" >
        <xsd:annotation>
          <xsd:documentation>An entry in the Classification tables</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="classificationGradeType">
    <xsd:sequence>
      <xsd:element name="ID" type="xsd:int" >
        <xsd:annotation>
          <xsd:documentation>The Unique ID</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Description" type="xsd:string" >
        <xsd:annotation>
          <xsd:documentation>A Description of the Grade e.g. First Class</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Order" type="xsd:int" >
        <xsd:annotation>
          <xsd:documentation>This should indicate the order in which the grades flow, ie. best to worst (1-10)</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Obsolete" type="xsd:boolean" >
        <xsd:annotation>
          <xsd:documentation>Indicates if the Grade is now obsolete</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Discipline" type="enmDisciplineType" >
        <xsd:annotation>
          <xsd:documentation>The Discipline the grade relates to.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
    
  <xsd:element name="ClassificationTables">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="ClassificationTable" type="ClassificationTableType" minOccurs="1" maxOccurs="1"/>
        <xsd:element name="ClassificationGrades" minOccurs="1" maxOccurs="1">
          <xsd:annotation>
            <xsd:documentation>The up to date Classification Grades</xsd:documentation>
          </xsd:annotation>
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="ClassificationGrade" type="classificationGradeType"  maxOccurs="unbounded" minOccurs="0" />
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
      <xsd:attribute name="ActiveDate" type="xsd:string" >
        <xsd:annotation>
          <xsd:documentation>The date that these new classification tables became effective</xsd:documentation>
        </xsd:annotation>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>

  <xsd:simpleType name="enmGender">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="0" id="Male">
        <xsd:annotation>
          <xsd:documentation>Male</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration value="1" id="Female">
        <xsd:annotation>
          <xsd:documentation>Female</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:simpleType name="enmAgeGroupType">
    <xsd:restriction base="xsd:int">
      <xsd:enumeration id="Under12" value="0">
        <xsd:annotation>
          <xsd:documentation>Under 12's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under13" value="1">
        <xsd:annotation>
          <xsd:documentation>Under 13's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under14" value="2">
        <xsd:annotation>
          <xsd:documentation>Under 14's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under15" value="3">
        <xsd:annotation>
          <xsd:documentation>Under 15's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under16" value="4">
        <xsd:annotation>
          <xsd:documentation>Under 16's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under17" value="5">
        <xsd:annotation>
          <xsd:documentation>Under 17's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Under18" value="6">
        <xsd:annotation>
          <xsd:documentation>Under 18's</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Senior" value="7">
        <xsd:annotation>
          <xsd:documentation>Senior</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Junior" value="10">
        <xsd:annotation>
          <xsd:documentation>Junior</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Cadet" value="11">
        <xsd:annotation>
          <xsd:documentation>Cadet</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Master" value="12">
        <xsd:annotation>
          <xsd:documentation>Master</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:simpleType name="enmDisciplineType">
    <xsd:restriction base="xsd:int">
      <xsd:enumeration id="NotApplicable" value="0">
        <xsd:annotation>
          <xsd:documentation>Not Applicable</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Target_Outdoor" value="1">
        <xsd:annotation>
          <xsd:documentation>Target Outdoor</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Target_Indoor" value="2">
        <xsd:annotation>
          <xsd:documentation>Target Indoor</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Clout" value="3">
        <xsd:annotation>
          <xsd:documentation>Clout</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Field" value="4">
        <xsd:annotation>
          <xsd:documentation>Field</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Popin_Jay" value="5">
        <xsd:annotation>
          <xsd:documentation>Popin Jay</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Flight" value="6">
        <xsd:annotation>
          <xsd:documentation>Flight</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Golf" value="7">
        <xsd:annotation>
          <xsd:documentation>Golf</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Run" value="8">
        <xsd:annotation>
          <xsd:documentation>Run</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Ski" value="9">
        <xsd:annotation>
          <xsd:documentation>Ski</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="FITA_3D" value="10">
        <xsd:annotation>
          <xsd:documentation>FITA 3D</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Darts" value ="11">
        <xsd:annotation>
          <xsd:documentation>Darts</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
    </xsd:restriction>
  </xsd:simpleType>

   <xsd:simpleType name="enmBowstyleType">
    <xsd:restriction base="xsd:int">
      <xsd:enumeration id="Recurve_Freestyle" value="1">
        <xsd:annotation>
          <xsd:documentation>Recurve Freestyle</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Recurve_Barebow" value="2">
        <xsd:annotation>
          <xsd:documentation>Recurve Barebow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Recurve_Traditional" value="3">
        <xsd:annotation>
          <xsd:documentation>Recurve Traditional</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Longbow" value="4">
        <xsd:annotation>
          <xsd:documentation>Longbow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound_Unlimited" value="5">
        <xsd:annotation>
          <xsd:documentation>Compound Unlimited</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound_Limited" value="6">
        <xsd:annotation>
          <xsd:documentation>Compound Limited</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound_Barebow" value="7">
        <xsd:annotation>
          <xsd:documentation>Compound Barebow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound_Flight_Bow" value="8">
        <xsd:annotation>
          <xsd:documentation>Compound Flight Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="FITA_Standard_Bow" value="9">
        <xsd:annotation>
          <xsd:documentation>FITA Standard Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Crossbow" value="10">
        <xsd:annotation>
          <xsd:documentation>Crossbow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Conventional_Flight_Bow" value="11">
        <xsd:annotation>
          <xsd:documentation>Conventional Flight Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="American_Flatbow" value="12">
        <xsd:annotation>
          <xsd:documentation>American Flatbow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Hunting_Tackle" value="13">
        <xsd:annotation>
          <xsd:documentation>Hunting Tackle</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Bowhunter" value="14">
        <xsd:annotation>
          <xsd:documentation>Bowhunter</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="BareBow" value="15">
        <xsd:annotation>
          <xsd:documentation>BareBow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Freestyle" value="16">
        <xsd:annotation>
          <xsd:documentation>Freestyle</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound" value="17">
        <xsd:annotation>
          <xsd:documentation>Compound</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Recurve" value="18">
        <xsd:annotation>
          <xsd:documentation>Recurve</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="American_Longbow" value="19">
        <xsd:annotation>
          <xsd:documentation>American Longbow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="English_Longbow" value="20">
        <xsd:annotation>
          <xsd:documentation>English Longbow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Recurve_Target_Bow" value="21">
        <xsd:annotation>
          <xsd:documentation>Recurve Target Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Compound_Target_Bow" value="22">
        <xsd:annotation>
          <xsd:documentation>Compound Target Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
      <xsd:enumeration id="Foot_Bow" value="23">
        <xsd:annotation>
          <xsd:documentation>Foot Bow</xsd:documentation>
        </xsd:annotation>
      </xsd:enumeration>
    </xsd:restriction>
  </xsd:simpleType>
  
</xsd:schema>