<!--
		SIF Data Model Implementation Specification (UK) 2.0 (November 2014) Infrastructure Version: 3.0.1
	-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.sifassociation.org/datamodel/uk/2.0" xmlns:sif="http://www.sifassociation.org/datamodel/uk/2.0" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="imports/xml/xml.xsd" />

  <!--Infrastructure Common Elements-->


  <!--Infrastructure Messages-->


  <!--Infrastructure Data Objects-->


  <!--Data Model Common Elements-->


  <!--TimeElement-->

  <xs:complexType name="TimeElementType">
    <xs:sequence>
      <xs:element name="Type" type="xs:normalizedString" />
      <xs:element name="Code" type="xs:token" />
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="Value" type="xs:normalizedString" />
      <xs:element name="StartDateTime" minOccurs="0" nillable="true" type="xs:dateTime" />
      <xs:element name="EndDateTime" minOccurs="0" nillable="true" type="xs:dateTime" />
      <xs:element name="SpanGaps" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SpanGap" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type" type="xs:normalizedString" />
                  <xs:element name="Code" type="xs:token" />
                  <xs:element name="Name" type="xs:normalizedString" />
                  <xs:element name="Value" type="xs:normalizedString" />
                  <xs:element name="StartDateTime" minOccurs="0" nillable="true" type="xs:dateTime" />
                  <xs:element name="EndDateTime" minOccurs="0" nillable="true" type="xs:dateTime" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="IsCurrent" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="TimeElement" type="sif:TimeElementType" />


  <!--LifeCycle-->

  <xs:complexType name="LifeCycleType">
    <xs:sequence>
      <xs:element name="Created" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DateTime" type="xs:dateTime" />
            <xs:element name="Creators" minOccurs="0" nillable="true">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Creator" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Name" type="xs:normalizedString" />
                        <xs:element name="ID" type="xs:normalizedString" />
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ModificationHistory" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Modified" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="By" type="xs:normalizedString" />
                  <xs:element name="DateTime" type="xs:dateTime" />
                  <xs:element name="Description" minOccurs="0" nillable="true" type="xs:string" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="TimeElements" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:TimeElement" minOccurs="0" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="LifeCycle" type="sif:LifeCycleType" />


  <!--RightsElement-->

  <xs:complexType name="RightsElementType">
    <xs:sequence>
      <xs:element name="Cost" minOccurs="0" nillable="true" type="xs:boolean" />
      <xs:element name="FeesForUse" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="FeeForUse" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="UseType" type="xs:string" />
                  <xs:element name="MeteringType" type="xs:token" />
                  <xs:element name="MeteringURL" minOccurs="0" nillable="true" type="xs:anyURI" />
                  <xs:element name="PerUseCharge" minOccurs="0" nillable="true" type="sif:MonetaryAmountType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CopyrightStatement" minOccurs="0" nillable="true" type="xs:string" />
      <xs:element name="TermsOfUse" minOccurs="0" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="RightsElement" type="sif:RightsElementType" />


  <!--EducationFilter-->

  <xs:complexType name="EducationFilterType">
    <xs:sequence>
      <xs:element name="MediaTypes" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MediaType" maxOccurs="unbounded" type="xs:token" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="NCYearGroupList" minOccurs="0" nillable="true" type="sif:NCYearGroupListType" />
      <xs:element name="SubjectAreaList" minOccurs="0" nillable="true" type="sif:SubjectAreaListType" />
      <xs:element name="InterestLevels" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="InterestLevel" maxOccurs="unbounded" type="sif:NCYearGroupType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LearningStandardItems" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningStandardItemRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="BloomsTaxonomyLevels" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="BloomsTaxonomyLevel" minOccurs="0" maxOccurs="unbounded">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Knowledge" />
                  <xs:enumeration value="Comprehension" />
                  <xs:enumeration value="Application" />
                  <xs:enumeration value="Analysis" />
                  <xs:enumeration value="Synthesis" />
                  <xs:enumeration value="Evaluation" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MultipleIntelligences" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MultipleIntelligence" minOccurs="0" maxOccurs="unbounded">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Linguistic" />
                  <xs:enumeration value="Logical-Mathematical" />
                  <xs:enumeration value="Spatial" />
                  <xs:enumeration value="Musical" />
                  <xs:enumeration value="Bodily-Kinesthetic" />
                  <xs:enumeration value="Interpersonal" />
                  <xs:enumeration value="Intrapersonal" />
                  <xs:enumeration value="Naturalist" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="InstructionalStrategies" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="InstructionalStrategy" minOccurs="0" maxOccurs="unbounded">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Lecture" />
                  <xs:enumeration value="Online" />
                  <xs:enumeration value="Discussion" />
                  <xs:enumeration value="Cooperative Group" />
                  <xs:enumeration value="Scenario" />
                  <xs:enumeration value="Demonstration/Lab" />
                  <xs:enumeration value="Self-study" />
                  <xs:enumeration value="Problem-Based Learning" />
                  <xs:enumeration value="Project" />
                  <xs:enumeration value="Other" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Title" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Summary" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="LearningObjectives" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningObjective" maxOccurs="unbounded" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ResourceTypes" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ResourceType" maxOccurs="unbounded">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Supplemental Resource" />
                  <xs:enumeration value="Remedial Resource" />
                  <xs:enumeration value="Core Instructional Resource" />
                  <xs:enumeration value="Assessment" />
                  <xs:enumeration value="Other" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="EducationFilter" type="sif:EducationFilterType" />


  <!--ElectronicIdList-->

  <xs:complexType name="ElectronicIdListType">
    <xs:sequence>
      <xs:element ref="sif:ElectronicId" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="ElectronicIdList" type="sif:ElectronicIdListType" />


  <!--ElectronicId-->

  <xs:complexType name="ElectronicIdType">
    <xs:simpleContent>
      <xs:extension base="xs:normalizedString">
        <xs:attribute name="Type" use="required">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="Barcode" />
              <xs:enumeration value="Magstripe" />
              <xs:enumeration value="PIN" />
              <xs:enumeration value="RFID" />
            </xs:restriction>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:element name="ElectronicId" type="sif:ElectronicIdType" />


  <!--SchoolURL-->

  <xs:simpleType name="SchoolURLType">
    <xs:restriction base="xs:anyURI" />
  </xs:simpleType>

  <xs:element name="SchoolURL" type="sif:SchoolURLType" />


  <!--LocalId-->

  <xs:simpleType name="LocalIdType">
    <xs:restriction base="xs:normalizedString" />
  </xs:simpleType>

  <xs:element name="LocalId" type="sif:LocalIdType" />


  <!--SchoolYear-->

  <xs:simpleType name="SchoolYearType">
    <xs:restriction base="xs:gYear" />
  </xs:simpleType>

  <xs:element name="SchoolYear" type="sif:SchoolYearType" />


  <!--LastName-->

  <xs:simpleType name="LastNameType">
    <xs:restriction base="xs:normalizedString" />
  </xs:simpleType>

  <xs:element name="LastName" type="sif:LastNameType" />


  <!--FirstName-->

  <xs:simpleType name="FirstNameType">
    <xs:restriction base="xs:normalizedString" />
  </xs:simpleType>

  <xs:element name="FirstName" type="sif:FirstNameType" />


  <!--MiddleName-->

  <xs:simpleType name="MiddleNameType">
    <xs:restriction base="xs:normalizedString" />
  </xs:simpleType>

  <xs:element name="MiddleName" type="sif:MiddleNameType" />


  <!--Address-->

  <xs:complexType name="AddressType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="PAON">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="StartNumber" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="StartNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="EndNumber" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="EndNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SAON" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="StartNumber" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="StartNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="EndNumber" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="EndNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Street" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Locality" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Town" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="AdministrativeArea" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="County" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="PostTown" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="PostCode" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Country" minOccurs="0" nillable="true" type="sif:CountryType" />
      <xs:element name="UniquePropertyReferenceNumber" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:integer">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="999999999999" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="UniqueStreetReferenceNumber" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:integer">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="99999999" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="LocationContext" minOccurs="0" nillable="true" type="sif:LocationContextType" />
      <xs:element name="GridLocation" minOccurs="0" nillable="true" type="sif:GridLocationType" />
    </xs:sequence>
    <xs:attribute name="Type" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="Current" />
          <xs:enumeration value="Mailing" />
          <xs:enumeration value="Transportation" />
          <xs:enumeration value="Previous" />
          <xs:enumeration value="Other" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Address" type="sif:AddressType" />


  <!--AddressList-->

  <xs:complexType name="AddressListType">
    <xs:sequence>
      <xs:element name="Address" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="sif:AddressType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="Delete" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="AddressList" type="sif:AddressListType">
    <xs:key name="AddressListKey1">
      <xs:selector xpath="./sif:Address" />
      <xs:field xpath="@Type" />
    </xs:key>
  </xs:element>


  <!--ContactList-->

  <xs:complexType name="ContactListType">
    <xs:sequence>
      <xs:element name="Contact" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="PositionTitle" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="Role" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="PublishInDirectory" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="SIF_RefId" use="required" type="sif:IdRefType" />
          <xs:attribute name="SIF_RefObject" use="required">
            <xs:simpleType>
              <xs:restriction base="xs:token">
                <xs:enumeration value="WorkforcePersonal" />
                <xs:enumeration value="ContactPersonal" />
                <xs:enumeration value="LearnerPersonal" />
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="ContactList" type="sif:ContactListType" />


  <!--Country-->

  <xs:simpleType name="CountryType">
    <xs:restriction base="sif:TeachernetNationStatesAndCountriesType" />
  </xs:simpleType>

  <xs:element name="Country" type="sif:CountryType" />


  <!--Demographics-->

  <xs:complexType name="DemographicsType">
    <xs:sequence>
      <xs:element name="EthnicityList" minOccurs="0" nillable="true" type="sif:EthnicityListType" />
      <xs:element name="Gender" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="M" />
            <xs:enumeration value="F" />
            <xs:enumeration value="U" />
            <xs:enumeration value="W" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="BirthDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="BirthDateVerification" minOccurs="0" nillable="true" type="sif:UKBirthDateVerificationLevelType" />
      <xs:element name="PlaceOfBirth" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="CountyOfBirth" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="CountryOfBirth" minOccurs="0" nillable="true" type="sif:CountryType" />
      <xs:element name="CountriesOfCitizenship" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CountryOfCitizenship" maxOccurs="unbounded" type="sif:CountryType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CountriesOfResidency" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CountryOfResidency" maxOccurs="unbounded" type="sif:CountryType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CountryArrivalDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="EnglishProficiency" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="EALSteps" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="S1" />
                  <xs:enumeration value="S2" />
                  <xs:enumeration value="1T" />
                  <xs:enumeration value="1S" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="EALAcquisition" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A" />
                  <xs:enumeration value="B" />
                  <xs:enumeration value="C" />
                  <xs:enumeration value="D" />
                  <xs:enumeration value="E" />
                  <xs:enumeration value="0" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LanguageList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Language" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" type="sif:TeachernetLanguagesType" />
                  <xs:element name="Fluent" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Yes" />
                        <xs:enumeration value="No" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="TypeList">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Type" maxOccurs="unbounded">
                          <xs:simpleType>
                            <xs:restriction base="xs:token">
                              <xs:enumeration value="C" />
                              <xs:enumeration value="F" />
                              <xs:enumeration value="M" />
                              <xs:enumeration value="H" />
                              <xs:enumeration value="T" />
                              <xs:enumeration value="S" />
                            </xs:restriction>
                          </xs:simpleType>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                  <xs:element name="Source" minOccurs="0" nillable="true" type="sif:UKSourceCodeType" />
                  <xs:element name="Study" minOccurs="0" nillable="true" type="sif:UKLanguageStudyType" />
                  <xs:element name="StudyOther" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Yes" />
                        <xs:enumeration value="No" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MaritalStatus" minOccurs="0" nillable="true" type="sif:UKMaritalStatusType" />
      <xs:element name="NonUKSystemImmigrant" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Refugee" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Religion" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AffiliationCode" type="sif:UKReligiousAffiliationType" />
            <xs:element name="EducationStatus" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A" />
                  <xs:enumeration value="W" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="CollectiveWorshipStatus" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A" />
                  <xs:enumeration value="W" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Source" minOccurs="0" nillable="true" type="sif:UKSourceCodeType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Traveller" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" type="sif:UKTravellerGypsyCodeType" />
            <xs:element name="Source" type="sif:UKSourceCodeType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="Demographics" type="sif:DemographicsType" />


  <!--Email-->

  <xs:complexType name="EmailType">
    <xs:simpleContent>
      <xs:extension base="xs:normalizedString">
        <xs:attribute name="Type" use="required">
          <xs:simpleType>
            <xs:restriction base="xs:token">
              <xs:enumeration value="Business" />
              <xs:enumeration value="Personal" />
              <xs:enumeration value="School" />
              <xs:enumeration value="Alternate1" />
              <xs:enumeration value="Alternate2" />
              <xs:enumeration value="Alternate3" />
              <xs:enumeration value="Alternate4" />
            </xs:restriction>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:element name="Email" type="sif:EmailType" />


  <!--EmailList-->

  <xs:complexType name="EmailListType">
    <xs:sequence>
      <xs:element name="Email" maxOccurs="unbounded">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:EmailType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="Delete" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="EmailList" type="sif:EmailListType">
    <xs:key name="EmailListKey1">
      <xs:selector xpath="./sif:Email" />
      <xs:field xpath="@Type" />
    </xs:key>
  </xs:element>


  <!--EstablishmentId-->

  <xs:simpleType name="EstablishmentIdType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>

  <xs:element name="EstablishmentId" type="sif:EstablishmentIdType" />


  <!--EthnicityList-->

  <xs:complexType name="EthnicityListType">
    <xs:sequence>
      <xs:element name="Ethnicity" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" type="sif:TeachernetEthnicityCodeType" />
            <xs:element name="Source" type="sif:UKSourceCodeType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="EthnicityList" type="sif:EthnicityListType" />


  <!--GridLocation-->

  <xs:complexType name="GridLocationType">
    <xs:sequence>
      <xs:element name="PropertyEasting" type="xs:decimal" />
      <xs:element name="PropertyNorthing" type="xs:decimal" />
      <xs:element name="Latitude" minOccurs="0" nillable="true" type="xs:decimal" />
      <xs:element name="Longitude" minOccurs="0" nillable="true" type="xs:decimal" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="GridLocation" type="sif:GridLocationType" />


  <!--LAId-->

  <xs:simpleType name="LAIdType">
    <xs:restriction base="sif:TeachernetLAIdType" />
  </xs:simpleType>

  <xs:element name="LAId" type="sif:LAIdType" />


  <!--LAName-->

  <xs:simpleType name="LANameType">
    <xs:restriction base="sif:TeachernetLANameType" />
  </xs:simpleType>

  <xs:element name="LAName" type="sif:LANameType" />


  <!--LocationContext-->

  <xs:complexType name="LocationContextType">
    <xs:sequence>
      <xs:element name="CensusDistrict" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="WardCode" type="sif:ONSWardCodeType" />
      <xs:element name="WardName" type="sif:ONSWardNameType" />
      <xs:element name="ConstituencyCode" minOccurs="0" nillable="true" type="sif:ONSParliamentaryConstituencyCodeType" />
      <xs:element name="ConstituencyName" minOccurs="0" nillable="true" type="sif:ONSParliamentaryConstituencyNameType" />
      <xs:element name="Parish" minOccurs="0" nillable="true" type="sif:ONSParishCouncilNameType" />
      <xs:element name="ChurchOfEnglandDiocese" minOccurs="0" nillable="true" type="sif:TeachernetChurchOfEnglandDioceseType" />
      <xs:element name="ChurchOfEnglandParish" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="RomanCatholicDiocese" minOccurs="0" nillable="true" type="sif:TeachernetRomanCatholicDioceseType" />
      <xs:element name="RomanCatholicParish" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="LSCouncilCode" minOccurs="0" nillable="true" type="sif:TeachernetLearningAndSkillsCouncilAreaCodeType" />
      <xs:element name="CatchmentArea" minOccurs="0" nillable="true" type="xs:normalizedString" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="LocationContext" type="sif:LocationContextType" />


  <!--Name-->

  <xs:complexType name="NameType">
    <xs:sequence>
      <xs:element name="Title" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="FamilyName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="GivenName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="MiddleNames" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="FamilyNameFirst" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PreferredFamilyName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="PreferredFamilyNameFirst" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PreferredGivenName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Suffix" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="FullName" minOccurs="0" nillable="true" type="xs:normalizedString" />
    </xs:sequence>
    <xs:attribute name="Type" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="B" />
          <xs:enumeration value="C" />
          <xs:enumeration value="A" />
          <xs:enumeration value="R" />
          <xs:enumeration value="F" />
          <xs:enumeration value="M" />
          <xs:enumeration value="P" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Name" type="sif:NameType" />


  <!--NCYearGroup-->

  <xs:simpleType name="NCYearGroupType">
    <xs:restriction base="sif:UKNCYearGroupType" />
  </xs:simpleType>

  <xs:element name="NCYearGroup" type="sif:NCYearGroupType" />


  <!--NCYearGroupList-->

  <xs:complexType name="NCYearGroupListType">
    <xs:sequence>
      <xs:element ref="sif:NCYearGroup" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="NCYearGroupList" type="sif:NCYearGroupListType" />


  <!--PersonalInformation-->

  <xs:complexType name="PersonalInformationType">
    <xs:sequence>
      <xs:element ref="sif:Name" />
      <xs:element name="OtherNames" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:Name" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Demographics" minOccurs="0" nillable="true" type="sif:DemographicsType" />
      <xs:element name="Email" minOccurs="0" nillable="true" type="sif:EmailType" />
      <xs:element name="OtherEmailList" minOccurs="0" nillable="true" type="sif:EmailListType">
        <xs:key name="EmailListKey2">
          <xs:selector xpath="./sif:Email" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="Address" minOccurs="0" nillable="true" type="sif:AddressType" />
      <xs:element name="OtherAddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:key name="AddressListKey2">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="PhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType" />
      <xs:element name="OtherPhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:key name="PhoneNumberListKey1">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="ElectronicIdList" minOccurs="0" nillable="true" type="sif:ElectronicIdListType" />
      <xs:element name="OtherIdList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="OtherId" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required" type="xs:normalizedString" />
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="PersonalInformation" type="sif:PersonalInformationType" />


  <!--PhoneNumber-->

  <xs:complexType name="PhoneNumberType">
    <xs:sequence>
      <xs:element name="Number" type="xs:normalizedString" />
      <xs:element name="Extension" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ListedStatus" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Listed" />
            <xs:enumeration value="Unlisted" />
            <xs:enumeration value="Unknown" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="Type" use="required" type="sif:UKPhoneTypeType" />
  </xs:complexType>

  <xs:element name="PhoneNumber" type="sif:PhoneNumberType" />


  <!--PhoneNumberList-->

  <xs:complexType name="PhoneNumberListType">
    <xs:sequence>
      <xs:element name="PhoneNumber" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="sif:PhoneNumberType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="Delete" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="PhoneNumberList" type="sif:PhoneNumberListType">
    <xs:key name="PhoneNumberListKey2">
      <xs:selector xpath="./sif:PhoneNumber" />
      <xs:field xpath="@Type" />
    </xs:key>
  </xs:element>


  <!--SchoolURN-->

  <xs:simpleType name="SchoolURNType">
    <xs:restriction base="sif:EstablishmentIdType" />
  </xs:simpleType>

  <xs:element name="SchoolURN" type="sif:SchoolURNType" />


  <!--SubjectAreaList-->

  <xs:complexType name="SubjectAreaListType">
    <xs:sequence>
      <xs:element name="SubjectArea" maxOccurs="unbounded" type="sif:UKGeneralSubjectType" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="SubjectAreaList" type="sif:SubjectAreaListType" />


  <!--Period-->

  <xs:complexType name="PeriodType">
    <xs:sequence>
      <xs:element name="PeriodIndex" type="xs:integer" />
      <xs:element name="ShortName">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="LongName">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="25" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="StartTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="EndTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="Type">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="T" />
            <xs:enumeration value="R" />
            <xs:enumeration value="B" />
            <xs:enumeration value="L" />
            <xs:enumeration value="O" />
            <xs:enumeration value="N" />
            <xs:enumeration value="X" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="Period" type="sif:PeriodType" />


  <!--SIF_ExtendedElements-->

  <xs:complexType name="SIF_ExtendedElementsType">
    <xs:sequence>
      <xs:element name="SIF_ExtendedElement" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="sif:ExtendedContentType">
              <xs:attribute name="Name" use="required" type="xs:normalizedString" />
              <!--<xs:attribute ref="xsi:type" use="optional" />-->
              <xs:attribute name="SIF_Action" use="optional">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="Delete" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="SIF_ExtendedElements" type="sif:SIF_ExtendedElementsType">
    <xs:key name="SIF_ExtendedElementsKey1">
      <xs:selector xpath="./sif:SIF_ExtendedElement" />
      <xs:field xpath="@Name" />
    </xs:key>
  </xs:element>


  <!--SIF_Metadata-->

  <xs:complexType name="SIF_MetadataType">
    <xs:sequence>
      <xs:element name="TimeElements" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:TimeElement" minOccurs="0" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="LifeCycle" minOccurs="0" nillable="true" type="sif:LifeCycleType" />
      <xs:element name="RightsElements" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:RightsElement" minOccurs="0" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EducationFilter" minOccurs="0" nillable="true" type="sif:EducationFilterType" />
      <xs:element name="ImpactLevelElevation" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ImpactLevel">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="IL3" />
                  <xs:enumeration value="IL4" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="SIF_Metadata" type="sif:SIF_MetadataType" />


  <!--SIFUK-->


  <!--AssessmentResultComponent-->

  <xs:complexType name="AssessmentResultComponentType">
    <xs:sequence>
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ShortDescription" type="xs:normalizedString" />
      <xs:element name="Description" type="xs:normalizedString" />
      <xs:element name="YearList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Year" maxOccurs="unbounded" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AssessmentSubjectList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Subject" maxOccurs="unbounded" type="sif:UKAssessmentSubjectType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="StageList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Stage" maxOccurs="unbounded" type="sif:UKAssessmentStageType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AssessmentResultGradeSetRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="MarkSetList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MarkSet" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date" />
                  <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
                  <xs:element name="MinValue" type="xs:decimal" />
                  <xs:element name="MaxValue" type="xs:decimal" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ComponentType">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Comment" />
            <xs:enumeration value="Grade" />
            <xs:enumeration value="Mark" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ResultQualifier" type="sif:UKAssessmentResultQualifierType" />
      <xs:element name="AssessmentMethod" type="sif:UKAssessmentMethodType" />
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey2">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="AssessmentResultComponent" type="sif:AssessmentResultComponentType">
    <xs:key name="AssessmentResultComponentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentResultComponentGroup-->

  <xs:complexType name="AssessmentResultComponentGroupType">
    <xs:sequence>
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ComponentList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentResultComponentRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey3">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="AssessmentResultComponentGroup" type="sif:AssessmentResultComponentGroupType">
    <xs:key name="AssessmentResultComponentGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentResultGradeSet-->

  <xs:complexType name="AssessmentResultGradeSetType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="Notes" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="GradeSets">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="GradeSet" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" type="xs:date" />
                  <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
                  <xs:element name="Grades">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Grade" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Title" type="xs:normalizedString" />
                              <xs:element name="Description" type="xs:normalizedString" />
                              <xs:element name="RankOrder" type="xs:unsignedInt" />
                              <xs:element name="NumericValue" type="xs:decimal" />
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey4">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="AssessmentResultGradeSet" type="sif:AssessmentResultGradeSetType">
    <xs:key name="AssessmentResultGradeSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentLearnerSet-->

  <xs:complexType name="AssessmentLearnerSetType">
    <xs:sequence>
      <xs:element name="CreationDateTime" type="xs:dateTime" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="LearnerList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearnerPersonalRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey5">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="AssessmentResultComponentGroupRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="AssessmentLearnerSet" type="sif:AssessmentLearnerSetType">
    <xs:key name="AssessmentLearnerSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentSession-->

  <xs:complexType name="AssessmentSessionType">
    <xs:sequence>
      <xs:element name="SessionDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SessionEndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SchoolInfoRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="Activity" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Test" />
            <xs:enumeration value="Homework" />
            <xs:enumeration value="Exam" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Status" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Planned" />
            <xs:enumeration value="Complete" />
            <xs:enumeration value="Published" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="StaffList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="WorkforcePersonalRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey6">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="AssessmentLearnerSetRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="AssessmentSession" type="sif:AssessmentSessionType">
    <xs:key name="AssessmentSessionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentResponseComponentGroup-->

  <xs:complexType name="AssessmentResponseComponentGroupType">
    <xs:sequence>
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ComponentList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentResponseComponentRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey7">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="AssessmentSessionRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="AssessmentResponseComponentGroup" type="sif:AssessmentResponseComponentGroupType">
    <xs:key name="AssessmentResponseComponentGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerAssessmentResult-->

  <xs:complexType name="LearnerAssessmentResultType">
    <xs:sequence>
      <xs:element name="SchoolInfoRefId" type="sif:IdRefType" />
      <xs:element name="AchievementDate" type="xs:date" />
      <xs:element name="Result" type="xs:normalizedString" />
      <xs:element name="ResultStatus" type="sif:UKAssessmentResultStatusType" />
      <xs:element name="AssessmentSessionList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentSessionRefId" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey8">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="AssessmentComponentRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerAssessmentResult" type="sif:LearnerAssessmentResultType">
    <xs:key name="LearnerAssessmentResultKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerAssessmentResponseSet-->

  <xs:complexType name="LearnerAssessmentResponseSetType">
    <xs:sequence>
      <xs:element name="Items">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Item" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Response" type="xs:string" />
                  <xs:element name="ResponseStatus" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Correct" />
                        <xs:enumeration value="Incorrect" />
                        <xs:enumeration value="Complete" />
                        <xs:enumeration value="PartiallyComplete" />
                        <xs:enumeration value="Viewed" />
                        <xs:enumeration value="NotViewed" />
                        <xs:enumeration value="NotAnswered" />
                        <xs:enumeration value="Attempted (viewed but no response given)" />
                        <xs:enumeration value="Incomplete" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="ResponseTime" minOccurs="0" nillable="true" type="xs:duration" />
                  <xs:element name="Mark" minOccurs="0" nillable="true" type="xs:normalizedString" />
                  <xs:element name="Group" minOccurs="0" nillable="true" type="xs:normalizedString" />
                  <xs:element name="ItemName" minOccurs="0" nillable="true" type="xs:token" />
                  <xs:element name="ItemNumber" minOccurs="0" nillable="true" type="xs:token" />
                  <xs:element name="OrderAsked" minOccurs="0" nillable="true" type="xs:decimal" />
                  <xs:element name="NumberOfAttempts" minOccurs="0" nillable="true" type="xs:unsignedInt" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey9">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="AssessmentResponseComponentRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerAssessmentResponseSet" type="sif:LearnerAssessmentResponseSetType">
    <xs:key name="LearnerAssessmentResponseSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--AssessmentResponseComponent-->

  <xs:complexType name="AssessmentResponseComponentType">
    <xs:sequence>
      <xs:element name="Name" type="xs:normalizedString" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Description" type="xs:normalizedString" />
      <xs:element name="YearList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Year" maxOccurs="unbounded" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey10">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="AssessmentResponseComponent" type="sif:AssessmentResponseComponentType">
    <xs:key name="AssessmentResponseComponentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerAttendance-->

  <xs:complexType name="LearnerAttendanceType">
    <xs:sequence>
      <xs:element name="AttendanceDate" type="xs:date" />
      <xs:element name="TimeIn" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="StartTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="FinishTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="Session" minOccurs="0" nillable="true" type="sif:UKAttendanceSessionType" />
      <xs:element name="SessionLabel" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="AttendanceDomain" type="sif:UKAttendanceDomainType" />
      <xs:element name="AttendanceCode" type="sif:UKAttendanceCodeType" />
      <xs:element name="AttendanceNote" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="RecordTimestamp" minOccurs="0" nillable="true" type="xs:dateTime" />
      <xs:element name="InputSource" type="sif:UKAttendanceSourceType" />
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey11">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerAttendance" type="sif:LearnerAttendanceType">
    <xs:key name="LearnerAttendanceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--Identity-->

  <xs:complexType name="IdentityType">
    <xs:sequence>
      <xs:element name="SIF_RefId">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefType">
              <xs:attribute name="SIF_RefObject" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="LearnerPersonal" />
                    <xs:enumeration value="WorkforcePersonal" />
                    <xs:enumeration value="ContactPersonal" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="MainRole" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="AuthenticationSource">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="UKAccessShibboleth" />
            <xs:enumeration value="MSActiveDirectory" />
            <xs:enumeration value="NovellNDS" />
            <xs:enumeration value="OpenDirectory" />
            <xs:enumeration value="Other" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="IdentityAssertions" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="IdentityAssertion" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="SchemaName" use="required" type="xs:normalizedString" />
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
        <xs:key name="IdentityAssertionsKey1">
          <xs:selector xpath="./sif:IdentityAssertion" />
          <xs:field xpath="@SchemaName" />
        </xs:key>
      </xs:element>
      <xs:element name="PasswordList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Password" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:base64Binary">
                    <xs:attribute name="Algorithm" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="MD5" />
                          <xs:enumeration value="SHA1" />
                          <xs:enumeration value="DES" />
                          <xs:enumeration value="TripleDES" />
                          <xs:enumeration value="RC2" />
                          <xs:enumeration value="AES" />
                          <xs:enumeration value="RSA" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                    <xs:attribute name="KeyName" use="required" type="xs:normalizedString" />
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AuthenticationSourceGlobalUID" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey12">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="Identity" type="sif:IdentityType">
    <xs:key name="IdentityKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--ContactPersonal-->

  <xs:complexType name="ContactPersonalType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType" />
      <xs:element ref="sif:PersonalInformation" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey13">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="ContactPersonal" type="sif:ContactPersonalType">
    <xs:key name="ContactPersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LAInfo-->

  <xs:complexType name="LAInfoType">
    <xs:sequence>
      <xs:element ref="sif:LAId" />
      <xs:element ref="sif:LAName" />
      <xs:element name="LAFullName" type="xs:normalizedString" />
      <xs:element name="LAURL" minOccurs="0" nillable="true" type="xs:anyURI" />
      <xs:element name="LAAddress" minOccurs="0" nillable="true" type="sif:AddressType" />
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:key name="AddressListKey3">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="LAPhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType" />
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:key name="PhoneNumberListKey3">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="LAContactList" minOccurs="0" nillable="true" type="sif:ContactListType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey14">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="LAInfo" type="sif:LAInfoType">
    <xs:key name="LAInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerAttendanceSummary-->

  <xs:complexType name="LearnerAttendanceSummaryType">
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" />
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="EndDate" type="xs:date" />
      <xs:element name="ReasonsList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Reason" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" type="sif:UKAttendanceCodeType" />
                  <xs:element name="Type">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Absent" />
                        <xs:enumeration value="EarlyDeparture" />
                        <xs:enumeration value="Late" />
                        <xs:enumeration value="Partial" />
                        <xs:enumeration value="Present" />
                        <xs:enumeration value="Other" />
                        <xs:enumeration value="NA" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="Status">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Authorised" />
                        <xs:enumeration value="Unauthorised" />
                        <xs:enumeration value="Unknown" />
                        <xs:enumeration value="NA" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="Total" type="xs:unsignedInt" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SessionsAttendedTotal" type="xs:unsignedInt" />
      <xs:element name="SessionsPossible" type="xs:unsignedInt" />
      <xs:element name="AuthorisedAbsences" minOccurs="0" nillable="true" type="xs:unsignedInt" />
      <xs:element name="UnauthorisedAbsences" minOccurs="0" nillable="true" type="xs:unsignedInt" />
      <xs:element name="AlternativeTuitionHours" minOccurs="0" nillable="true" type="sif:UKTuitionHoursType" />
      <xs:element name="DfeStatutorySessionAttendanceString" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey15">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerAttendanceSummary" type="sif:LearnerAttendanceSummaryType">
    <xs:key name="LearnerAttendanceSummaryKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@LearnerPersonalRefId" />
      <xs:field xpath="@SchoolInfoRefId" />
      <xs:field xpath="./sif:SchoolYear" />
      <xs:field xpath="./sif:StartDate" />
      <xs:field xpath="./sif:EndDate" />
    </xs:key>
  </xs:element>


  <!--LearnerContact-->

  <xs:complexType name="LearnerContactType">
    <xs:sequence>
      <xs:element name="Relationship" type="sif:UKRelationshipType" />
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType" />
      <xs:element name="ContactFlags">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ParentLegalGuardian" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="PickupRights" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="LivesWith" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="AddressDisclosure" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="EmailCommunication" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="EmergencyContact" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="DisciplinaryContact" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="HomeDuringDay" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="MemberOfArmedForces" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="PrimaryCareProvider" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="RequiresInterpreter" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="TransferAddress" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ContactSequence" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:minInclusive value="1" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ContactSequenceSource" minOccurs="0" nillable="true" type="sif:UKSourceCodeType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey16">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="ContactPersonalRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerContact" type="sif:LearnerContactType">
    <xs:key name="LearnerContactKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@LearnerPersonalRefId" />
      <xs:field xpath="@ContactPersonalRefId" />
    </xs:key>
  </xs:element>


  <!--LearnerExclusion-->

  <xs:complexType name="LearnerExclusionType">
    <xs:sequence>
      <xs:element name="Category">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="FIXD" />
            <xs:enumeration value="PERM" />
            <xs:enumeration value="LNCH" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Reason" type="sif:UKExclusionReasonType" />
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="StartSession">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:minInclusive value="1" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ActualSessions" minOccurs="0" nillable="true" type="xs:unsignedInt" />
      <xs:element name="Appeal" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="AppealDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="AppealResult" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="R" />
            <xs:enumeration value="E" />
            <xs:enumeration value="O" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ReinstatementDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="HeadTeacherNotificationDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="GovernorMeetingDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="HearingNoticeOfAppealDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey17">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerExclusion" type="sif:LearnerExclusionType">
    <xs:key name="LearnerExclusionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerGroupEnrolment-->

  <xs:complexType name="LearnerGroupEnrolmentType">
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" />
      <xs:element name="EntryDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey18">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolGroupRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerGroupEnrolment" type="sif:LearnerGroupEnrolmentType">
    <xs:key name="LearnerGroupEnrolmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerPersonal-->

  <xs:complexType name="LearnerPersonalType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType" />
      <xs:element name="AlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AlertMsg" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="Legal" />
                          <xs:enumeration value="Discipline" />
                          <xs:enumeration value="Educational" />
                          <xs:enumeration value="Other" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MedicalAlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MedicalAlertMsg" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Severity" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="Low" />
                          <xs:enumeration value="Moderate" />
                          <xs:enumeration value="High" />
                          <xs:enumeration value="Severe" />
                          <xs:enumeration value="Unknown" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="sif:PersonalInformation" />
      <xs:element name="UIPI" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="UPN" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="UPNAllocationDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="FormerUPNList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="UPN" maxOccurs="unbounded" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ULN" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:pattern value="[1-9][0-9]{9}" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ExternalLearnerIdentifierList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ExternalLearnerIdentifier" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="IdentifierType" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="SCN" />
                          <xs:enumeration value="UCI" />
                          <xs:enumeration value="LocalExamNo" />
                          <xs:enumeration value="Other" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="FamilyStructure" minOccurs="0" nillable="true" type="sif:UKFamilyStructureType" />
      <xs:element name="InCare" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Current">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                  <xs:enumeration value="Unknown" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Type" minOccurs="0" nillable="true" type="sif:UKInCareTypeType" />
            <xs:element ref="sif:LAId" />
            <xs:element name="AtCurrentSchool" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="PersonalEducationPlan" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ConnexionsAgreement" minOccurs="0" nillable="true" type="sif:UKConnexionsAgreementType" />
      <xs:element name="ChildProtectionRegister" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="IsRegistered">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                  <xs:enumeration value="Unknown" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType" />
            <xs:element name="SiblingRegistered" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Yes" />
                  <xs:enumeration value="No" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GiftedTalented" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="HomeLA" minOccurs="0" nillable="true" type="sif:LAIdType" />
      <xs:element name="LearnerIdentity" minOccurs="0" nillable="true" type="sif:UKLearnerIdentityType" />
      <xs:element name="ModeOfTravel" minOccurs="0" nillable="true" type="sif:UKUsualModeOfTravelType" />
      <xs:element name="Pregnant" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SiblingList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Sibling" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LearnerPersonalRefId" type="sif:IdRefType" />
                  <xs:element name="UIPI" type="xs:normalizedString" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="UniformAllowance" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="CurrentSchoolEnrolment" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SIF_RefId" minOccurs="0" nillable="true">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="sif:IdRefType">
                    <xs:attribute name="SIF_RefObject" use="optional">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="SchoolInfo" />
                          <xs:enumeration value="LAInfo" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
            <xs:element ref="sif:LAId" />
            <xs:element ref="sif:EstablishmentId" />
            <xs:element ref="sif:NCYearGroup" />
          </xs:sequence>
          <xs:attribute name="LearnerSchoolEnrolmentRefId" use="required" type="sif:IdRefType" />
          <xs:attribute name="MembershipType" use="optional" type="sif:UKLearnerEnrolmentStatusType" />
        </xs:complexType>
      </xs:element>
      <xs:element name="PreviousEstablishmentList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="PreviousEstablishment" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="EstablishmentId" minOccurs="0" nillable="true" type="sif:EstablishmentIdType" />
                  <xs:element name="EstablishmentName" minOccurs="0" nillable="true" type="xs:normalizedString" />
                  <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType" />
                  <xs:element name="EntryDate" minOccurs="0" nillable="true" type="xs:date" />
                  <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date" />
                  <xs:element name="ExitType" minOccurs="0" nillable="true" type="sif:UKLeavingReasonType" />
                  <xs:element name="LastSchool" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Yes" />
                        <xs:enumeration value="No" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey19">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="LearnerPersonal" type="sif:LearnerPersonalType">
    <xs:key name="LearnerPersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerSchoolEnrolment-->

  <xs:complexType name="LearnerSchoolEnrolmentType">
    <xs:sequence>
      <xs:element name="EntryDate" type="xs:date" />
      <xs:element name="NCYearGroupActual" type="sif:NCYearGroupType" />
      <xs:element name="ClassType" minOccurs="0" nillable="true" type="sif:UKClassTypeType" />
      <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ExitType" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" type="sif:UKLeavingReasonType" />
            <xs:element name="Destination" minOccurs="0" nillable="true">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" type="sif:UKLeavingDestinationType" />
                  <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType" />
                  <xs:element name="EstablishmentId" minOccurs="0" nillable="true" type="sif:EstablishmentIdType" />
                  <xs:element name="Name" minOccurs="0" nillable="true" type="xs:normalizedString" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Sessions" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:maxInclusive value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="FTPTStatus" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Boarder" minOccurs="0" nillable="true" type="sif:UKBoarderTypeType" />
      <xs:element name="AlternativeTuition" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Category" type="sif:UKTuitionCategoryType" />
            <xs:element name="StartDate" type="xs:date" />
            <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
            <xs:element name="TotalHours" minOccurs="0" nillable="true" type="xs:unsignedInt" />
            <xs:element name="ProvisionType" type="sif:UKAlternativeTuitionProvisionTypeType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey20">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="MembershipType" use="required" type="sif:UKLearnerEnrolmentStatusType" />
  </xs:complexType>

  <xs:element name="LearnerSchoolEnrolment" type="sif:LearnerSchoolEnrolmentType">
    <xs:key name="LearnerSchoolEnrolmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerSpecialNeeds-->

  <xs:complexType name="LearnerSpecialNeedsType">
    <xs:sequence>
      <xs:element name="UnitMember" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ResourcedProvisionMember" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="NextReviewDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Provision" type="sif:UKSENProvisionType" />
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SENTypeList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SENType" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="sif:UKSENTypeType">
                    <xs:attribute name="Ranking" use="required" type="xs:unsignedInt" />
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AdviceAndAssessmentLevel" minOccurs="0" nillable="true" type="sif:UKAdviceAndAssessmentWalesType" />
      <xs:element name="GroupingAndSupportLevel" minOccurs="0" nillable="true" type="sif:UKGroupingAndSupportWalesType" />
      <xs:element name="SpecialisedResourcesLevel" minOccurs="0" nillable="true" type="sif:UKSpecialisedResourcesWalesType" />
      <xs:element name="TeachingMethodsLevel" minOccurs="0" nillable="true" type="sif:UKCurriculumAndTeachingMethodsWalesType" />
      <xs:element name="EmbeddedBasicSkillsSupport" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:union>
            <xs:simpleType>
              <xs:restriction base="sif:UKBasicSkillsSupportWalesType" />
            </xs:simpleType>
          </xs:union>
        </xs:simpleType>
      </xs:element>
      <xs:element name="LiteracyLevelStart" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="LiteracyLevelEnd" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="NumeracyLevelStart" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="NumeracyLevelEnd" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="NationalCurriculumList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="NationalCurriculum" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Modification">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="M" />
                        <xs:enumeration value="N" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="Subject" type="sif:UKGeneralSubjectType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MedicalFlag" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ParamedicalSupport" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="P" />
            <xs:enumeration value="S" />
            <xs:enumeration value="O" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="MedicalNotes" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey21">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="LearnerSpecialNeeds" type="sif:LearnerSpecialNeedsType" />


  <!--PersonPicture-->

  <xs:complexType name="PersonPictureType">
    <xs:sequence>
      <xs:element name="SIF_RefObjectList" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SIF_RefObject">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="ContactPersonal" />
                  <xs:enumeration value="LearnerPersonal" />
                  <xs:enumeration value="WorkforcePersonal" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="sif:SchoolYear" />
      <xs:element name="PictureSource">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:URIOrBinaryType">
              <xs:attribute name="Type" use="required">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="URL" />
                    <xs:enumeration value="JPEG" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="OKToPublish" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey22">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="PersonRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="PersonPicture" type="sif:PersonPictureType">
    <xs:key name="PersonPictureKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@PersonRefId" />
    </xs:key>
  </xs:element>


  <!--SchoolGroupType-->

  <xs:complexType name="SchoolGroupTypeType">
    <xs:sequence>
      <xs:element name="Code" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Title" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SubjectAreaList" minOccurs="0" nillable="true" type="sif:SubjectAreaListType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey23">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolYear" use="required" type="sif:SchoolYearType" />
    <xs:attribute name="GroupType" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="G" />
          <xs:enumeration value="R" />
          <xs:enumeration value="T" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolGroupType" type="sif:SchoolGroupTypeType">
    <xs:key name="SchoolGroupTypeKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--SchoolGroup-->

  <xs:complexType name="SchoolGroupType">
    <xs:sequence>
      <xs:element ref="sif:LocalId" />
      <xs:element name="GroupName" type="xs:normalizedString" />
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ParentSchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="ScheduleInfoList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ScheduleInfo" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TeacherList" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Teacher" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Role" minOccurs="0" nillable="true" type="sif:UKGroupRoleType" />
                            </xs:sequence>
                            <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:IdRefType" />
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey24">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="SchoolGroupTypeRefId" use="required" type="sif:IdRefType" />
    <xs:attribute name="SchoolYear" use="required" type="sif:SchoolYearType" />
  </xs:complexType>

  <xs:element name="SchoolGroup" type="sif:SchoolGroupType">
    <xs:key name="SchoolGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--SchoolInfo-->

  <xs:complexType name="SchoolInfoType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element ref="sif:EstablishmentId" />
      <xs:element ref="sif:LAId" />
      <xs:element name="SchoolName" type="xs:normalizedString" />
      <xs:element name="SchoolFullName" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="URN" minOccurs="0" nillable="true" type="sif:SchoolURNType" />
      <xs:element name="SchoolURL" minOccurs="0" nillable="true" type="sif:SchoolURLType" />
      <xs:element name="SchoolAddress" minOccurs="0" nillable="true" type="sif:AddressType" />
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:key name="AddressListKey4">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="SchoolPhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType" />
      <xs:element name="OtherPhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:key name="PhoneNumberListKey4">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="SchoolEmail" minOccurs="0" nillable="true" type="sif:EmailType" />
      <xs:element name="SchoolContactList" minOccurs="0" nillable="true" type="sif:ContactListType" />
      <xs:element name="HeadTeacherInfo" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ContactName" type="xs:normalizedString" />
            <xs:element name="ContactTitle" minOccurs="0" nillable="true" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Phase" minOccurs="0" nillable="true" type="sif:UKPhaseTypeType" />
      <xs:element name="SchoolType" minOccurs="0" nillable="true" type="sif:UKSchoolTypeType" />
      <xs:element name="Governance" minOccurs="0" nillable="true" type="sif:UKGovernanceTypeType" />
      <xs:element name="Intake" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="COMP" />
            <xs:enumeration value="SEL1" />
            <xs:enumeration value="SEL2" />
            <xs:enumeration value="SEL3" />
            <xs:enumeration value="SEL4" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="NCYearGroupList" minOccurs="0" nillable="true" type="sif:NCYearGroupListType" />
      <xs:element name="GenderOfEntry" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="C" />
            <xs:enumeration value="F" />
            <xs:enumeration value="M" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="GenderSixthForm" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="C" />
            <xs:enumeration value="F" />
            <xs:enumeration value="M" />
            <xs:enumeration value="blank = HighestNCYear less than 12" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Boarders" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SessionsPerDay" type="xs:unsignedInt" />
      <xs:element name="Nursery" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Special" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="OperationalStatus" minOccurs="0" nillable="true" type="sif:UKOperationalStatusType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey25">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="LAInfoRefId" use="optional" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="SchoolInfo" type="sif:SchoolInfoType">
    <xs:key name="SchoolInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TermInfo-->

  <xs:complexType name="TermInfoType">
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" />
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="EndDate" type="xs:date" />
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="TermCode" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="TermsPerYear" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:minInclusive value="3" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="6" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="MarkingTerm" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SchedulingTerm" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="AttendanceTerm" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="Yes" />
            <xs:enumeration value="No" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey26">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="TermInfo" type="sif:TermInfoType">
    <xs:key name="TermInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--WorkforcePersonal-->

  <xs:complexType name="WorkforcePersonalType">
    <xs:sequence>
      <xs:element ref="sif:LocalId" />
      <xs:element name="AlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AlertMsg" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="Legal" />
                          <xs:enumeration value="Discipline" />
                          <xs:enumeration value="Educational" />
                          <xs:enumeration value="Other" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MedicalAlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MedicalAlertMsg" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Severity" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="Low" />
                          <xs:enumeration value="Moderate" />
                          <xs:enumeration value="High" />
                          <xs:enumeration value="Severe" />
                          <xs:enumeration value="Unknown" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="sif:PersonalInformation" />
      <xs:element name="TeacherNumber" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="NINumber" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:pattern value="[A-Z]{2}[0-9]{6}[A-Z]" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ExternalWorkforceIdentifierList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ExternalWorkforceIdentifier" maxOccurs="unbounded">
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="IdentifierType" use="required">
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="PayrollNo" />
                          <xs:enumeration value="Other" />
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CurrentAssignmentList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CurrentAssignment" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="SIF_RefId" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="sif:IdRefType">
                          <xs:attribute name="SIF_RefObject" use="optional">
                            <xs:simpleType>
                              <xs:restriction base="xs:token">
                                <xs:enumeration value="SchoolInfo" />
                                <xs:enumeration value="LAInfo" />
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                  <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType" />
                  <xs:element name="EstablishmentId" minOccurs="0" nillable="true" type="sif:EstablishmentIdType" />
                  <xs:element name="Posts" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Post" maxOccurs="unbounded" type="sif:UKAssignmentPostType" />
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey27">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="WorkforcePersonal" type="sif:WorkforcePersonalType">
    <xs:key name="WorkforcePersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerBehaviourIncident-->

  <xs:complexType name="LearnerBehaviourIncidentType">
    <xs:sequence>
      <xs:element name="SchoolInfoRefId" type="sif:IdRefType" />
      <xs:element name="BehaviourType">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Weighting">
              <xs:simpleType>
                <xs:restriction base="xs:integer">
                  <xs:minInclusive value="-10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                  <xs:maxInclusive value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                  <xs:fractionDigits value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Classification">
              <xs:simpleType>
                <xs:union>
                  <xs:simpleType>
                    <xs:restriction base="sif:UKPupilExclusionReasonType" />
                  </xs:simpleType>
                  <xs:simpleType>
                    <xs:restriction base="xs:token">
                      <xs:enumeration value="Physical Abuse" />
                      <xs:enumeration value="Verbal Abuse" />
                      <xs:enumeration value="Substance Abuse" />
                      <xs:enumeration value="Bullying" />
                      <xs:enumeration value="Property Abuse" />
                      <xs:enumeration value="Disruption" />
                      <xs:enumeration value="Compliance" />
                      <xs:enumeration value="Other" />
                    </xs:restriction>
                  </xs:simpleType>
                </xs:union>
              </xs:simpleType>
            </xs:element>
            <xs:element name="SubClassification" minOccurs="0" nillable="true" type="xs:normalizedString" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Incident">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Date" type="xs:dateTime" />
            <xs:element name="Duration" minOccurs="0" nillable="true" type="xs:integer" />
            <xs:element name="Location">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Offsite Unsupervised" />
                  <xs:enumeration value="Offsite Supervised" />
                  <xs:enumeration value="Class" />
                  <xs:enumeration value="School Indoors Non-Class" />
                  <xs:enumeration value="School Outdoors Non-Class" />
                  <xs:enumeration value="Other" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Comments" minOccurs="0" nillable="true" type="xs:normalizedString" />
            <xs:element name="PrecursorRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
            <xs:element name="Confidentiality">
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="Low" />
                  <xs:enumeration value="Medium" />
                  <xs:enumeration value="High" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Participants">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Employees">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Employee" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="ParticipationTypes">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="ParticipationType" maxOccurs="unbounded">
                                <xs:simpleType>
                                  <xs:restriction base="xs:token">
                                    <xs:enumeration value="Recorder" />
                                    <xs:enumeration value="Incharge" />
                                    <xs:enumeration value="Victim/Recipient" />
                                    <xs:enumeration value="Witness/Observer" />
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                        <xs:element name="ParticipationComment" minOccurs="0" nillable="true" type="xs:normalizedString" />
                      </xs:sequence>
                      <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:IdRefType" />
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="Learners">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Learner" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="ParticipationTypes">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="ParticipationType" maxOccurs="unbounded">
                                <xs:simpleType>
                                  <xs:restriction base="xs:token">
                                    <xs:enumeration value="Perpetrator" />
                                    <xs:enumeration value="Victim/Recipient" />
                                    <xs:enumeration value="Witness/Observer" />
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                        <xs:element name="ParticipationComment" minOccurs="0" nillable="true" type="xs:normalizedString" />
                        <xs:element name="Motivation" minOccurs="0" nillable="true">
                          <xs:simpleType>
                            <xs:restriction base="xs:token">
                              <xs:enumeration value="Racial" />
                              <xs:enumeration value="Sexual" />
                              <xs:enumeration value="Financial" />
                              <xs:enumeration value="Religious" />
                              <xs:enumeration value="Other" />
                            </xs:restriction>
                          </xs:simpleType>
                        </xs:element>
                        <xs:element name="Weighting" minOccurs="0" nillable="true">
                          <xs:simpleType>
                            <xs:restriction base="xs:integer">
                              <xs:minInclusive value="-10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                              <xs:maxInclusive value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                              <xs:fractionDigits value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                            </xs:restriction>
                          </xs:simpleType>
                        </xs:element>
                        <xs:element name="Actions" minOccurs="0" nillable="true">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Action" maxOccurs="unbounded">
                                <xs:complexType>
                                  <xs:sequence>
                                    <xs:element name="Classification">
                                      <xs:simpleType>
                                        <xs:restriction base="xs:token">
                                          <xs:enumeration value="Communication" />
                                          <xs:enumeration value="Activity" />
                                          <xs:enumeration value="Punishment" />
                                          <xs:enumeration value="Exclusion" />
                                        </xs:restriction>
                                      </xs:simpleType>
                                    </xs:element>
                                    <xs:element name="SubClassification" minOccurs="0" nillable="true" type="xs:normalizedString" />
                                    <xs:element name="Date" type="xs:dateTime" />
                                    <xs:element name="Person" minOccurs="0" nillable="true" type="sif:IdRefType" />
                                    <xs:element name="Comment" minOccurs="0" nillable="true" type="xs:normalizedString" />
                                  </xs:sequence>
                                </xs:complexType>
                              </xs:element>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType" />
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey28">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="LearnerBehaviourIncident" type="sif:LearnerBehaviourIncidentType">
    <xs:key name="LearnerBehaviourIncidentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--Scope-->

  <xs:complexType name="ScopeType">
    <xs:sequence>
      <xs:element name="TTScopeName">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="50" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SupplierName">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="50" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SupplierURL" minOccurs="0" nillable="true" type="xs:anyURI" />
      <xs:element name="Product">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Version">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="20" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SchoolInfoRefId" type="sif:IdRefType" />
      <xs:element name="SchoolName">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="60" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ScheduleCreationDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ScheduleName" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="20" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element ref="sif:SchoolYear" />
      <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Status">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="BT" />
            <xs:enumeration value="ET" />
            <xs:enumeration value="RP" />
            <xs:enumeration value="SI" />
            <xs:enumeration value="UI" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:key name="PhoneNumberListKey5">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:key>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey29">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="Scope" type="sif:ScopeType">
    <xs:key name="ScopeKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TTTeacher-->

  <xs:complexType name="TTTeacherType">
    <xs:sequence>
      <xs:element name="Code">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="6" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="Description">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="24" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey30">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTTeacher" type="sif:TTTeacherType">
    <xs:key name="TTTeacherKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TTSubject-->

  <xs:complexType name="TTSubjectType">
    <xs:sequence>
      <xs:element name="Code">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="6" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" type="xs:normalizedString" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey31">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTSubject" type="sif:TTSubjectType">
    <xs:key name="TTSubjectKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TTRoom-->

  <xs:complexType name="TTRoomType">
    <xs:sequence>
      <xs:element name="Code">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" type="xs:normalizedString" />
      <xs:element name="SiteRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey32">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTRoom" type="sif:TTRoomType">
    <xs:key name="TTRoomKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TTSite-->

  <xs:complexType name="TTSiteType">
    <xs:sequence>
      <xs:element name="Code">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="10" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Type" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="S" />
            <xs:enumeration value="V" />
            <xs:enumeration value="E" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey33">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTSite" type="sif:TTSiteType">
    <xs:key name="TTSiteKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--Cycle-->

  <xs:complexType name="CycleType">
    <xs:sequence>
      <xs:element name="CycleName" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="CycleDays" type="xs:integer" />
      <xs:element name="PeriodsPerDay" type="xs:integer" />
      <xs:element name="StandardPeriodList">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:Period" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="TTDayList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="TTDay" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TTDayId">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="ShortName">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="15" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="LongName">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="25" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="DayIndex" type="xs:integer" />
                  <xs:element name="PeriodList" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element ref="sif:Period" maxOccurs="unbounded" />
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey34">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="SchoolInfoRefId" use="optional" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="Cycle" type="sif:CycleType">
    <xs:key name="CycleKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--TeachingGroup-->

  <xs:complexType name="TeachingGroupType">
    <xs:sequence>
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="GroupDefinition" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ShortName">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="LongName">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:maxLength value="80" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="TTSubjectRefId" type="sif:IdRefType" />
            <xs:element name="Set" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Block" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Level" minOccurs="0" nillable="true" type="sif:UKAssessmentStageType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MainTeacherRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType" />
      <xs:element name="GroupTeacherList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="GroupTeacher" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TTTeacherRefId" type="sif:IdRefType" />
                  <xs:element name="Type">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="A" />
                        <xs:enumeration value="H" />
                        <xs:enumeration value="Z" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey35">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TeachingGroup" type="sif:TeachingGroupType">
    <xs:key name="TeachingGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--Junction-->

  <xs:complexType name="JunctionType">
    <xs:sequence>
      <xs:element name="Label">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ShortLabel">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="20" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="LocalType" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="30" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="InputList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Input" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="SC" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="GroupLocalId" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="OutputList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Output" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="TG" />
                        <xs:enumeration value="YR" />
                        <xs:enumeration value="GR" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="LocalType" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="30" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="GroupLocalId" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="TeachingGroupRefId" minOccurs="0" nillable="true" type="sif:RefIdType" />
                  <xs:element name="Desc" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="ShortDesc" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="NCYearList" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="NCYear" maxOccurs="unbounded" type="sif:NCYearGroupType" />
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey36">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="Junction" type="sif:JunctionType">
    <xs:key name="JunctionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--NonTeachingActivity-->

  <xs:complexType name="NonTeachingActivityType">
    <xs:sequence>
      <xs:element name="NTCode">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="25" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Type">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="R" />
            <xs:enumeration value="B" />
            <xs:enumeration value="L" />
            <xs:enumeration value="O" />
            <xs:enumeration value="U" />
            <xs:enumeration value="X" />
            <xs:enumeration value="N" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey37">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="NonTeachingActivity" type="sif:NonTeachingActivityType">
    <xs:key name="NonTeachingActivityKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--Lesson-->

  <xs:complexType name="LessonType">
    <xs:sequence>
      <xs:element name="TTDayId">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PeriodIndex" type="xs:integer" />
      <xs:element name="Type">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="T" />
            <xs:enumeration value="N" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Length" minOccurs="0" nillable="true" type="xs:integer" />
      <xs:element name="TeachingGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="NTCodeRef" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="TeacherList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="TTTeacherRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="TTRoomRefId" minOccurs="0" nillable="true" type="sif:IdRefType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey38">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="CycleRefId" use="optional" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="Lesson" type="sif:LessonType">
    <xs:key name="LessonKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--LearnerEntitlement-->

  <xs:complexType name="LearnerEntitlementType">
    <xs:sequence>
      <xs:element name="LearnerPersonalRefId" type="sif:RefIdType" />
      <xs:element name="SchoolInfoRefId" type="sif:RefIdType" />
      <xs:element name="EntitlementType" type="xs:normalizedString" />
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Value" minOccurs="0" nillable="true" />
      <xs:element name="ProviderId" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefType">
              <xs:attribute name="ProviderType" use="required" type="xs:normalizedString" />
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="NextReviewDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey39">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="LearnerEntitlement" type="sif:LearnerEntitlementType">
    <xs:key name="LearnerEntitlementKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--PersonDietaryPreference-->

  <xs:complexType name="PersonDietaryPreferenceType">
    <xs:sequence>
      <xs:element name="PersonRefId" type="sif:IdRefType" />
      <xs:element name="WeeklyMealPatternList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="WeeklyMealPattern" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" type="xs:date" />
                  <xs:element name="EndDate" type="xs:date" />
                  <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString" />
                  <xs:element name="Meals">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Meal" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Day">
                                <xs:simpleType>
                                  <xs:restriction base="xs:token">
                                    <xs:enumeration value="Mon" />
                                    <xs:enumeration value="Tue" />
                                    <xs:enumeration value="Wed" />
                                    <xs:enumeration value="Thu" />
                                    <xs:enumeration value="Fri" />
                                    <xs:enumeration value="Sat" />
                                    <xs:enumeration value="Sun" />
                                    <xs:enumeration value="All" />
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                              <xs:element name="MealTime">
                                <xs:simpleType>
                                  <xs:restriction base="xs:token">
                                    <xs:enumeration value="Breakfast" />
                                    <xs:enumeration value="Lunch" />
                                    <xs:enumeration value="Dinner" />
                                    <xs:enumeration value="Other" />
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                              <xs:element name="MealType">
                                <xs:simpleType>
                                  <xs:restriction base="xs:token">
                                    <xs:enumeration value="Cooked" />
                                    <xs:enumeration value="Fixed" />
                                    <xs:enumeration value="Choice" />
                                    <xs:enumeration value="Cold" />
                                    <xs:enumeration value="Sandwich" />
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="DietaryPreferenceList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DietaryPreference" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="PreferenceType">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Medical" />
                        <xs:enumeration value="Allergy" />
                        <xs:enumeration value="Personal" />
                        <xs:enumeration value="Faith" />
                        <xs:enumeration value="Cultural" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="MealComponent" type="xs:normalizedString" />
                  <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString" />
                  <xs:element name="MealEffect" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="Include" />
                        <xs:enumeration value="Exclude" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey40">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="PersonDietaryPreference" type="sif:PersonDietaryPreferenceType">
    <xs:key name="PersonDietaryPreferenceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--WorkforceAbsence-->

  <xs:complexType name="WorkforceAbsenceType">
    <xs:sequence>
      <xs:element name="AbsenceStartDate" type="xs:date" />
      <xs:element name="AbsenceStartTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="AbsenceEndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="AbsenceEndTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="AbsenceType" type="sif:UKAbsenceReasonType" />
      <xs:element name="AbsenceIllness" minOccurs="0" nillable="true" type="sif:UKIllnessCategoryType" />
      <xs:element name="WorkforceAssignmentRefId" minOccurs="0" nillable="true" type="sif:RefIdType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey41">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="WorkforceAbsence" type="sif:WorkforceAbsenceType">
    <xs:key name="WorkforceAbsenceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--WorkforceContract-->

  <xs:complexType name="WorkforceContractType">
    <xs:sequence>
      <xs:element name="ContractStartDate" type="xs:date" />
      <xs:element name="ContractEndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="ContractAssignmentCode" type="xs:string" />
      <xs:element name="ContractHoursPerWeek" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="168" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:fractionDigits value="2" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ContractWeeksPerYear" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="52.2857" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:fractionDigits value="4" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ContractFTE" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:minInclusive value="0" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:maxInclusive value="1" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            <xs:fractionDigits value="2" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey42">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="WorkforceAssignmentRefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="WorkforceContract" type="sif:WorkforceContractType">
    <xs:key name="WorkforceContractKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--WorkforceAssignment-->

  <xs:complexType name="WorkforceAssignmentType">
    <xs:sequence>
      <xs:element name="SIF_RefId" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefType">
              <xs:attribute name="SIF_RefObject" use="optional">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="SchoolInfo" />
                    <xs:enumeration value="LAInfo" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="AssignmentStartDate" type="xs:date" />
      <xs:element name="AssignmentEndDate" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Post" type="sif:UKAssignmentPostType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey43">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="WorkforceAssignment" type="sif:WorkforceAssignmentType">
    <xs:key name="WorkforceAssignmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>


  <!--SchoolDiaryEntry-->

  <xs:complexType name="SchoolDiaryEntryType">
    <xs:sequence>
      <xs:element name="StartDate" type="xs:date" />
      <xs:element name="StartTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="EndDate" type="xs:date" />
      <xs:element name="EndTime" minOccurs="0" nillable="true" type="xs:time" />
      <xs:element name="Title" type="xs:normalizedString" />
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="Category" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey44">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType" />
  </xs:complexType>

  <xs:element name="SchoolDiaryEntry" type="sif:SchoolDiaryEntryType">
    <xs:key name="SchoolDiaryEntryKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>

  <xs:simpleType name="InfrastructureStatusCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="0" />
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureErrorCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="0" />
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="13" />
      <xs:enumeration value="14" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureXMLValidationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="6" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureEncryptionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureAuthenticationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureAccessAndPermissionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="13" />
      <xs:enumeration value="14" />
      <xs:enumeration value="15" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureRegistrationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureProvisionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSubscriptionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="3" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureRequestAndResponseErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="13" />
      <xs:enumeration value="14" />
      <xs:enumeration value="15" />
      <xs:enumeration value="16" />
      <xs:enumeration value="17" />
      <xs:enumeration value="18" />
      <xs:enumeration value="19" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureEventReportingAndProcessingErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="3" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureTransportErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSystemErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureGenericMessageHandlingErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSMBErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSIFZoneServiceErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="13" />
      <xs:enumeration value="14" />
      <xs:enumeration value="15" />
      <xs:enumeration value="16" />
      <xs:enumeration value="17" />
      <xs:enumeration value="18" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntrySuccessCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryDataIssuesWithSuccessResultType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryDataIssuesWithFailureResultType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryAgentErrorConditionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryZISErrorConditionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKUsualModeOfTravelType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="WLK" />
      <xs:enumeration value="CYC" />
      <xs:enumeration value="CAR" />
      <xs:enumeration value="CRS" />
      <xs:enumeration value="PSB" />
      <xs:enumeration value="DSB" />
      <xs:enumeration value="BNK" />
      <xs:enumeration value="TXI" />
      <xs:enumeration value="TRN" />
      <xs:enumeration value="LUL" />
      <xs:enumeration value="MTL" />
      <xs:enumeration value="OTH" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentMethodType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DD" />
      <xs:enumeration value="NA" />
      <xs:enumeration value="TA" />
      <xs:enumeration value="TT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentResultQualifierType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="EG" />
      <xs:enumeration value="EL" />
      <xs:enumeration value="FC" />
      <xs:enumeration value="FD" />
      <xs:enumeration value="FS" />
      <xs:enumeration value="IA" />
      <xs:enumeration value="IG" />
      <xs:enumeration value="IR" />
      <xs:enumeration value="IS" />
      <xs:enumeration value="NA" />
      <xs:enumeration value="ND" />
      <xs:enumeration value="NF" />
      <xs:enumeration value="NL" />
      <xs:enumeration value="NM" />
      <xs:enumeration value="NP" />
      <xs:enumeration value="NR" />
      <xs:enumeration value="NS" />
      <xs:enumeration value="AG" />
      <xs:enumeration value="SA" />
      <xs:enumeration value="LG" />
      <xs:enumeration value="ML" />
      <xs:enumeration value="NC" />
      <xs:enumeration value="NM" />
      <xs:enumeration value="NS" />
      <xs:enumeration value="PF" />
      <xs:enumeration value="PC" />
      <xs:enumeration value="PR" />
      <xs:enumeration value="RA" />
      <xs:enumeration value="RS" />
      <xs:enumeration value="SC" />
      <xs:enumeration value="OT" />
      <xs:enumeration value="CM" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentResultStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="E" />
      <xs:enumeration value="I" />
      <xs:enumeration value="P" />
      <xs:enumeration value="R" />
      <xs:enumeration value="T" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentStageType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="FSP" />
      <xs:enumeration value="KS0" />
      <xs:enumeration value="KS1" />
      <xs:enumeration value="K1T" />
      <xs:enumeration value="K2P" />
      <xs:enumeration value="K3P" />
      <xs:enumeration value="KS2" />
      <xs:enumeration value="KS3" />
      <xs:enumeration value="KS4" />
      <xs:enumeration value="KS5" />
      <xs:enumeration value="Y03" />
      <xs:enumeration value="Y04" />
      <xs:enumeration value="Y4X" />
      <xs:enumeration value="Y05" />
      <xs:enumeration value="Y07" />
      <xs:enumeration value="Y7P" />
      <xs:enumeration value="Y08" />
      <xs:enumeration value="EAL" />
      <xs:enumeration value="SEN" />
      <xs:enumeration value="W09" />
      <xs:enumeration value="W13" />
      <xs:enumeration value="P2" />
      <xs:enumeration value="P3" />
      <xs:enumeration value="P4" />
      <xs:enumeration value="P5" />
      <xs:enumeration value="P6" />
      <xs:enumeration value="P7" />
      <xs:enumeration value="S1" />
      <xs:enumeration value="S2" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentSubjectType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ARA" />
      <xs:enumeration value="ART" />
      <xs:enumeration value="BEN" />
      <xs:enumeration value="CHI" />
      <xs:enumeration value="CLL" />
      <xs:enumeration value="CRE" />
      <xs:enumeration value="CYM" />
      <xs:enumeration value="DAN" />
      <xs:enumeration value="DAT" />
      <xs:enumeration value="DUT" />
      <xs:enumeration value="ENG" />
      <xs:enumeration value="FIN" />
      <xs:enumeration value="FRE" />
      <xs:enumeration value="FSP" />
      <xs:enumeration value="GAE" />
      <xs:enumeration value="GEO" />
      <xs:enumeration value="GER" />
      <xs:enumeration value="GRE" />
      <xs:enumeration value="GUJ" />
      <xs:enumeration value="HEB" />
      <xs:enumeration value="HIS" />
      <xs:enumeration value="ICT" />
      <xs:enumeration value="ITA" />
      <xs:enumeration value="JAP" />
      <xs:enumeration value="KUW" />
      <xs:enumeration value="MAT" />
      <xs:enumeration value="MFL" />
      <xs:enumeration value="MUS" />
      <xs:enumeration value="PAN" />
      <xs:enumeration value="PED" />
      <xs:enumeration value="PHY" />
      <xs:enumeration value="POR" />
      <xs:enumeration value="PSE" />
      <xs:enumeration value="PSH" />
      <xs:enumeration value="RUS" />
      <xs:enumeration value="SCI" />
      <xs:enumeration value="SPA" />
      <xs:enumeration value="SWE" />
      <xs:enumeration value="TUR" />
      <xs:enumeration value="URD" />
      <xs:enumeration value="WEL" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceSessionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AM" />
      <xs:enumeration value="PM" />
      <xs:enumeration value="NA" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceSourceType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BIO" />
      <xs:enumeration value="HU" />
      <xs:enumeration value="WF" />
      <xs:enumeration value="OT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLocaleType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="E" />
      <xs:enumeration value="N" />
      <xs:enumeration value="S" />
      <xs:enumeration value="W" />
      <xs:enumeration value="O" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAbsenceCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="MAT" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="PUB" />
      <xs:enumeration value="SEC" />
      <xs:enumeration value="SIC" />
      <xs:enumeration value="TRN" />
      <xs:enumeration value="UNA" />
      <xs:enumeration value="UNP" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdditionalPaymentTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="LIN" />
      <xs:enumeration value="LOT" />
      <xs:enumeration value="LFR" />
      <xs:enumeration value="MAL" />
      <xs:enumeration value="TLR" />
      <xs:enumeration value="RAR" />
      <xs:enumeration value="SEN" />
      <xs:enumeration value="ACT" />
      <xs:enumeration value="RES" />
      <xs:enumeration value="INS" />
      <xs:enumeration value="OOS" />
      <xs:enumeration value="RCP" />
      <xs:enumeration value="RCC" />
      <xs:enumeration value="RCA" />
      <xs:enumeration value="WEL" />
      <xs:enumeration value="GTC" />
      <xs:enumeration value="UQT" />
      <xs:enumeration value="OTH" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsAptitudeCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="PE" />
      <xs:enumeration value="PA" />
      <xs:enumeration value="VA" />
      <xs:enumeration value="ML" />
      <xs:enumeration value="DT" />
      <xs:enumeration value="OT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsOfferStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="O" />
      <xs:enumeration value="N" />
      <xs:enumeration value="W" />
      <xs:enumeration value="D" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsNotifyMethodType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="O" />
      <xs:enumeration value="E" />
      <xs:enumeration value="T" />
      <xs:enumeration value="L" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsPrebandCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1A" />
      <xs:enumeration value="1B" />
      <xs:enumeration value="2A" />
      <xs:enumeration value="2B" />
      <xs:enumeration value="3" />
      <xs:enumeration value="U" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsReasonCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DIST" />
      <xs:enumeration value="SIBL" />
      <xs:enumeration value="MEDL" />
      <xs:enumeration value="RLGN" />
      <xs:enumeration value="CTCH" />
      <xs:enumeration value="FEED" />
      <xs:enumeration value="TRAV" />
      <xs:enumeration value="SSEX" />
      <xs:enumeration value="COED" />
      <xs:enumeration value="APTD" />
      <xs:enumeration value="SOCL" />
      <xs:enumeration value="OTHR" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKADTFileStatusTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Prime" />
      <xs:enumeration value="Change" />
      <xs:enumeration value="Withdrawal" />
      <xs:enumeration value="Suspended" />
      <xs:enumeration value="Late" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdviceAndAssessmentWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AA1" />
      <xs:enumeration value="AA2" />
      <xs:enumeration value="AA3" />
      <xs:enumeration value="AA4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAlternativeTuitionProvisionTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="HSP" />
      <xs:enumeration value="IND" />
      <xs:enumeration value="NMS" />
      <xs:enumeration value="NOT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssignmentPostType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ADMC" />
      <xs:enumeration value="ADVT" />
      <xs:enumeration value="ARTD" />
      <xs:enumeration value="ASHT" />
      <xs:enumeration value="ATTN" />
      <xs:enumeration value="BILN" />
      <xs:enumeration value="BURS" />
      <xs:enumeration value="BUSS" />
      <xs:enumeration value="CTKR" />
      <xs:enumeration value="TCHR" />
      <xs:enumeration value="CLNR" />
      <xs:enumeration value="CXPA" />
      <xs:enumeration value="COOK" />
      <xs:enumeration value="COVR" />
      <xs:enumeration value="CART" />
      <xs:enumeration value="DATA" />
      <xs:enumeration value="DPHT" />
      <xs:enumeration value="EDWO" />
      <xs:enumeration value="EPSY" />
      <xs:enumeration value="ESCT" />
      <xs:enumeration value="INVG" />
      <xs:enumeration value="EXAM" />
      <xs:enumeration value="FINC" />
      <xs:enumeration value="HDTR" />
      <xs:enumeration value="HDYR" />
      <xs:enumeration value="HDPT" />
      <xs:enumeration value="HDHO" />
      <xs:enumeration value="HLTA" />
      <xs:enumeration value="HSLO" />
      <xs:enumeration value="ICTM" />
      <xs:enumeration value="ICTT" />
      <xs:enumeration value="INST" />
      <xs:enumeration value="LANG" />
      <xs:enumeration value="SPLY" />
      <xs:enumeration value="LRNM" />
      <xs:enumeration value="LMEN" />
      <xs:enumeration value="LSEN" />
      <xs:enumeration value="LIBR" />
      <xs:enumeration value="LITR" />
      <xs:enumeration value="MIDA" />
      <xs:enumeration value="MIDS" />
      <xs:enumeration value="MINS" />
      <xs:enumeration value="MISC" />
      <xs:enumeration value="MUSS" />
      <xs:enumeration value="MUSC" />
      <xs:enumeration value="NURS" />
      <xs:enumeration value="NNSE" />
      <xs:enumeration value="OMAN" />
      <xs:enumeration value="CATR" />
      <xs:enumeration value="OICT" />
      <xs:enumeration value="PERI" />
      <xs:enumeration value="PAHT" />
      <xs:enumeration value="PREM" />
      <xs:enumeration value="RECP" />
      <xs:enumeration value="RPRG" />
      <xs:enumeration value="SSEC" />
      <xs:enumeration value="STCH" />
      <xs:enumeration value="SENC" />
      <xs:enumeration value="TNON" />
      <xs:enumeration value="TPRU" />
      <xs:enumeration value="TMIS" />
      <xs:enumeration value="TASS" />
      <xs:enumeration value="TTCH" />
      <xs:enumeration value="THER" />
      <xs:enumeration value="TRAV" />
      <xs:enumeration value="VOLN" />
      <xs:enumeration value="WELF" />
      <xs:enumeration value="ASTE" />
      <xs:enumeration value="ACAR" />
      <xs:enumeration value="ACOO" />
      <xs:enumeration value="HCOO" />
      <xs:enumeration value="LASS" />
      <xs:enumeration value="SOFF" />
      <xs:enumeration value="RESP" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKIllnessCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ALLE" />
      <xs:enumeration value="ALDR" />
      <xs:enumeration value="ANXI" />
      <xs:enumeration value="BLOO" />
      <xs:enumeration value="CANC" />
      <xs:enumeration value="CHFS" />
      <xs:enumeration value="CIRC" />
      <xs:enumeration value="DENT" />
      <xs:enumeration value="DIAB" />
      <xs:enumeration value="DIGE" />
      <xs:enumeration value="EARC" />
      <xs:enumeration value="EPIL" />
      <xs:enumeration value="EYEC" />
      <xs:enumeration value="FOOD" />
      <xs:enumeration value="GAST" />
      <xs:enumeration value="GEUR" />
      <xs:enumeration value="HEMI" />
      <xs:enumeration value="HRTC" />
      <xs:enumeration value="HEAT" />
      <xs:enumeration value="INFE" />
      <xs:enumeration value="INJB" />
      <xs:enumeration value="INJH" />
      <xs:enumeration value="INJL" />
      <xs:enumeration value="INJO" />
      <xs:enumeration value="KIDN" />
      <xs:enumeration value="LIVR" />
      <xs:enumeration value="MHEL" />
      <xs:enumeration value="MBOL" />
      <xs:enumeration value="MUSK" />
      <xs:enumeration value="NEUR" />
      <xs:enumeration value="NOTR" />
      <xs:enumeration value="NKNO" />
      <xs:enumeration value="NSPE" />
      <xs:enumeration value="OPER" />
      <xs:enumeration value="PREG" />
      <xs:enumeration value="PSYC" />
      <xs:enumeration value="REPR" />
      <xs:enumeration value="RESP" />
      <xs:enumeration value="SKIN" />
      <xs:enumeration value="STRS" />
      <xs:enumeration value="THYR" />
      <xs:enumeration value="TRAU" />
      <xs:enumeration value="VIRC" />
      <xs:enumeration value="VIRE" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAbsenceReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ACCI" />
      <xs:enumeration value="COMP" />
      <xs:enumeration value="INDI" />
      <xs:enumeration value="MAPA" />
      <xs:enumeration value="CARE" />
      <xs:enumeration value="OPAY" />
      <xs:enumeration value="PAPD" />
      <xs:enumeration value="PHAS" />
      <xs:enumeration value="SECO" />
      <xs:enumeration value="SICK" />
      <xs:enumeration value="STRI" />
      <xs:enumeration value="TRAI" />
      <xs:enumeration value="UNAU" />
      <xs:enumeration value="UPAY" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="/" />
      <xs:enumeration value="\" />
      <xs:enumeration value="B" />
      <xs:enumeration value="C" />
      <xs:enumeration value="D" />
      <xs:enumeration value="E" />
      <xs:enumeration value="F" />
      <xs:enumeration value="G" />
      <xs:enumeration value="H" />
      <xs:enumeration value="I" />
      <xs:enumeration value="J" />
      <xs:enumeration value="K" />
      <xs:enumeration value="L" />
      <xs:enumeration value="M" />
      <xs:enumeration value="N" />
      <xs:enumeration value="O" />
      <xs:enumeration value="P" />
      <xs:enumeration value="R" />
      <xs:enumeration value="S" />
      <xs:enumeration value="T" />
      <xs:enumeration value="U" />
      <xs:enumeration value="V" />
      <xs:enumeration value="W" />
      <xs:enumeration value="X" />
      <xs:enumeration value="Y" />
      <xs:enumeration value="Z" />
      <xs:enumeration value="#" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceDomainType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Lesson" />
      <xs:enumeration value="Session" />
      <xs:enumeration value="Both" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBasicSkillsSupportWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="00" />
      <xs:enumeration value="01" />
      <xs:enumeration value="02" />
      <xs:enumeration value="03" />
      <xs:enumeration value="04" />
      <xs:enumeration value="05" />
      <xs:enumeration value="06" />
      <xs:enumeration value="07" />
      <xs:enumeration value="90" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBirthDateVerificationLevelType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="0" />
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBoarderTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="B" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="N" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKClassTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N" />
      <xs:enumeration value="O" />
      <xs:enumeration value="S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKConnexionsAgreementType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Yes" />
      <xs:enumeration value="No" />
      <xs:enumeration value="UNS" />
      <xs:enumeration value="SNR" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKCurriculumAndTeachingMethodsWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="CT1" />
      <xs:enumeration value="CT2" />
      <xs:enumeration value="CT3" />
      <xs:enumeration value="CT4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKExclusionReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BU" />
      <xs:enumeration value="DA" />
      <xs:enumeration value="DB" />
      <xs:enumeration value="DM" />
      <xs:enumeration value="DR" />
      <xs:enumeration value="PA" />
      <xs:enumeration value="PP" />
      <xs:enumeration value="PW" />
      <xs:enumeration value="RA" />
      <xs:enumeration value="SM" />
      <xs:enumeration value="TB" />
      <xs:enumeration value="TH" />
      <xs:enumeration value="VA" />
      <xs:enumeration value="VP" />
      <xs:enumeration value="OT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKFamilyStructureType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="S" />
      <xs:enumeration value="A" />
      <xs:enumeration value="F" />
      <xs:enumeration value="C" />
      <xs:enumeration value="U" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGeneralSubjectType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AAD" />
      <xs:enumeration value="ABS" />
      <xs:enumeration value="ACC" />
      <xs:enumeration value="AHS" />
      <xs:enumeration value="AIT" />
      <xs:enumeration value="ARA" />
      <xs:enumeration value="ART" />
      <xs:enumeration value="ASC" />
      <xs:enumeration value="BEN" />
      <xs:enumeration value="BIO" />
      <xs:enumeration value="CAB" />
      <xs:enumeration value="CAR" />
      <xs:enumeration value="CBE" />
      <xs:enumeration value="CDT" />
      <xs:enumeration value="CHD" />
      <xs:enumeration value="CHI" />
      <xs:enumeration value="CHM" />
      <xs:enumeration value="CIT" />
      <xs:enumeration value="CLS" />
      <xs:enumeration value="COM" />
      <xs:enumeration value="COS" />
      <xs:enumeration value="CSB" />
      <xs:enumeration value="CSC" />
      <xs:enumeration value="CSP" />
      <xs:enumeration value="CYM" />
      <xs:enumeration value="DAN" />
      <xs:enumeration value="DAT" />
      <xs:enumeration value="DNC" />
      <xs:enumeration value="DRA" />
      <xs:enumeration value="DTE" />
      <xs:enumeration value="DTF" />
      <xs:enumeration value="DTG" />
      <xs:enumeration value="DTR" />
      <xs:enumeration value="DTS" />
      <xs:enumeration value="DTT" />
      <xs:enumeration value="DUT" />
      <xs:enumeration value="ECO" />
      <xs:enumeration value="EDU" />
      <xs:enumeration value="ENG" />
      <xs:enumeration value="ENR" />
      <xs:enumeration value="ENV" />
      <xs:enumeration value="EUR" />
      <xs:enumeration value="FIN" />
      <xs:enumeration value="FRE" />
      <xs:enumeration value="GEN" />
      <xs:enumeration value="GEO" />
      <xs:enumeration value="GER" />
      <xs:enumeration value="GLG" />
      <xs:enumeration value="GPL" />
      <xs:enumeration value="GRC" />
      <xs:enumeration value="GRE" />
      <xs:enumeration value="GUJ" />
      <xs:enumeration value="HAC" />
      <xs:enumeration value="HBB" />
      <xs:enumeration value="HEB" />
      <xs:enumeration value="HIN" />
      <xs:enumeration value="HIS" />
      <xs:enumeration value="HSC" />
      <xs:enumeration value="HUM" />
      <xs:enumeration value="ICT" />
      <xs:enumeration value="IND" />
      <xs:enumeration value="ITA" />
      <xs:enumeration value="JAP" />
      <xs:enumeration value="KSK" />
      <xs:enumeration value="LAE" />
      <xs:enumeration value="LAT" />
      <xs:enumeration value="LAW" />
      <xs:enumeration value="LIF" />
      <xs:enumeration value="LTT" />
      <xs:enumeration value="MAT" />
      <xs:enumeration value="MED" />
      <xs:enumeration value="MFL" />
      <xs:enumeration value="MNF" />
      <xs:enumeration value="MUS" />
      <xs:enumeration value="OBC" />
      <xs:enumeration value="OCL" />
      <xs:enumeration value="OHU" />
      <xs:enumeration value="OLA" />
      <xs:enumeration value="OMA" />
      <xs:enumeration value="OPH" />
      <xs:enumeration value="OPR" />
      <xs:enumeration value="OSC" />
      <xs:enumeration value="OSS" />
      <xs:enumeration value="OTE" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="OVO" />
      <xs:enumeration value="PAN" />
      <xs:enumeration value="PED" />
      <xs:enumeration value="PER" />
      <xs:enumeration value="PHL" />
      <xs:enumeration value="PHY" />
      <xs:enumeration value="POR" />
      <xs:enumeration value="PRI" />
      <xs:enumeration value="PSH" />
      <xs:enumeration value="PSY" />
      <xs:enumeration value="REL" />
      <xs:enumeration value="RUS" />
      <xs:enumeration value="RWD" />
      <xs:enumeration value="SCI" />
      <xs:enumeration value="SEN" />
      <xs:enumeration value="SOC" />
      <xs:enumeration value="SPA" />
      <xs:enumeration value="SSS" />
      <xs:enumeration value="STA" />
      <xs:enumeration value="SWE" />
      <xs:enumeration value="TDG" />
      <xs:enumeration value="TUR" />
      <xs:enumeration value="UFA" />
      <xs:enumeration value="URD" />
      <xs:enumeration value="VNW" />
      <xs:enumeration value="WEL" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGovernanceTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="CO" />
      <xs:enumeration value="VA" />
      <xs:enumeration value="VC" />
      <xs:enumeration value="FO" />
      <xs:enumeration value="IN" />
      <xs:enumeration value="NM" />
      <xs:enumeration value="CT" />
      <xs:enumeration value="CA" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGroupRoleType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="HDT" />
      <xs:enumeration value="DHT" />
      <xs:enumeration value="AHT" />
      <xs:enumeration value="TCH" />
      <xs:enumeration value="AST" />
      <xs:enumeration value="EXL" />
      <xs:enumeration value="SUP" />
      <xs:enumeration value="AVT" />
      <xs:enumeration value="EPS" />
      <xs:enumeration value="ADM" />
      <xs:enumeration value="GOV" />
      <xs:enumeration value="ACD" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="VOL" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGroupingAndSupportWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="GS1" />
      <xs:enumeration value="GS2" />
      <xs:enumeration value="GS3" />
      <xs:enumeration value="GS4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKInCareTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="FT" />
      <xs:enumeration value="CH" />
      <xs:enumeration value="WP" />
      <xs:enumeration value="PA" />
      <xs:enumeration value="OT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLanguageStudyType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLearnerEnrolmentStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="C" />
      <xs:enumeration value="G" />
      <xs:enumeration value="M" />
      <xs:enumeration value="S" />
      <xs:enumeration value="P" />
      <xs:enumeration value="U" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLearnerIdentityType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="WAL" />
      <xs:enumeration value="ENG" />
      <xs:enumeration value="SCO" />
      <xs:enumeration value="IRE" />
      <xs:enumeration value="BRI" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="REF" />
      <xs:enumeration value="NOS" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLeavingDestinationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="MP" />
      <xs:enumeration value="IP" />
      <xs:enumeration value="MS" />
      <xs:enumeration value="IS" />
      <xs:enumeration value="SC" />
      <xs:enumeration value="FE" />
      <xs:enumeration value="HE" />
      <xs:enumeration value="WL" />
      <xs:enumeration value="EM" />
      <xs:enumeration value="NK" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLeavingReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DD" />
      <xs:enumeration value="EO" />
      <xs:enumeration value="EM" />
      <xs:enumeration value="FE" />
      <xs:enumeration value="FM" />
      <xs:enumeration value="HE" />
      <xs:enumeration value="NI" />
      <xs:enumeration value="IJ" />
      <xs:enumeration value="JS" />
      <xs:enumeration value="MS" />
      <xs:enumeration value="OS" />
      <xs:enumeration value="OT" />
      <xs:enumeration value="PE" />
      <xs:enumeration value="ST" />
      <xs:enumeration value="TR" />
      <xs:enumeration value="UN" />
      <xs:enumeration value="WK" />
      <xs:enumeration value="MD" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKMaritalStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="S" />
      <xs:enumeration value="M" />
      <xs:enumeration value="D" />
      <xs:enumeration value="W" />
      <xs:enumeration value="N" />
      <xs:enumeration value="P" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKNCYearGroupType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N1" />
      <xs:enumeration value="N2" />
      <xs:enumeration value="R" />
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
      <xs:enumeration value="6" />
      <xs:enumeration value="7" />
      <xs:enumeration value="8" />
      <xs:enumeration value="9" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="13" />
      <xs:enumeration value="14" />
      <xs:enumeration value="M" />
      <xs:enumeration value="X" />
      <xs:enumeration value="U" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKOperationalStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
      <xs:enumeration value="3" />
      <xs:enumeration value="4" />
      <xs:enumeration value="5" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPhaseTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="NY" />
      <xs:enumeration value="PY" />
      <xs:enumeration value="MP" />
      <xs:enumeration value="MS" />
      <xs:enumeration value="SY" />
      <xs:enumeration value="SP" />
      <xs:enumeration value="EY" />
      <xs:enumeration value="PR" />
      <xs:enumeration value="XX" />
      <xs:enumeration value="NO" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPhoneTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="F" />
      <xs:enumeration value="H" />
      <xs:enumeration value="A" />
      <xs:enumeration value="M" />
      <xs:enumeration value="W" />
      <xs:enumeration value="D" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKRelationshipType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ASWR" />
      <xs:enumeration value="CARE" />
      <xs:enumeration value="CHMR" />
      <xs:enumeration value="DEPD" />
      <xs:enumeration value="DOCT" />
      <xs:enumeration value="EMPY" />
      <xs:enumeration value="FAAP" />
      <xs:enumeration value="FAAS" />
      <xs:enumeration value="FABH" />
      <xs:enumeration value="FABI" />
      <xs:enumeration value="FABN" />
      <xs:enumeration value="FABS" />
      <xs:enumeration value="FADF" />
      <xs:enumeration value="FADI" />
      <xs:enumeration value="FADR" />
      <xs:enumeration value="FAFF" />
      <xs:enumeration value="FAFI" />
      <xs:enumeration value="FAFN" />
      <xs:enumeration value="FAFO" />
      <xs:enumeration value="FAFS" />
      <xs:enumeration value="FAGA" />
      <xs:enumeration value="FAGD" />
      <xs:enumeration value="FAGF" />
      <xs:enumeration value="FAGM" />
      <xs:enumeration value="FAGS" />
      <xs:enumeration value="FAGU" />
      <xs:enumeration value="FALP" />
      <xs:enumeration value="FAMF" />
      <xs:enumeration value="FAMH" />
      <xs:enumeration value="FAMI" />
      <xs:enumeration value="FAMN" />
      <xs:enumeration value="FAMO" />
      <xs:enumeration value="FAMS" />
      <xs:enumeration value="FANC" />
      <xs:enumeration value="FANW" />
      <xs:enumeration value="FAOT" />
      <xs:enumeration value="FAPF" />
      <xs:enumeration value="FAPP" />
      <xs:enumeration value="FASF" />
      <xs:enumeration value="FASH" />
      <xs:enumeration value="FASI" />
      <xs:enumeration value="FASN" />
      <xs:enumeration value="FASO" />
      <xs:enumeration value="FASP" />
      <xs:enumeration value="FASS" />
      <xs:enumeration value="FASW" />
      <xs:enumeration value="FNCF" />
      <xs:enumeration value="FNCM" />
      <xs:enumeration value="FRND" />
      <xs:enumeration value="GUAR" />
      <xs:enumeration value="HTCR" />
      <xs:enumeration value="NONE" />
      <xs:enumeration value="OREL" />
      <xs:enumeration value="OTHR" />
      <xs:enumeration value="PREH" />
      <xs:enumeration value="PREW" />
      <xs:enumeration value="PROB" />
      <xs:enumeration value="PTNP" />
      <xs:enumeration value="PTNR" />
      <xs:enumeration value="RELA" />
      <xs:enumeration value="RELC" />
      <xs:enumeration value="RELG" />
      <xs:enumeration value="RELU" />
      <xs:enumeration value="SIGO" />
      <xs:enumeration value="SWKR" />
      <xs:enumeration value="TADV" />
      <xs:enumeration value="WARD" />
      <xs:enumeration value="WIFE" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKReligiousAffiliationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BA" />
      <xs:enumeration value="BU" />
      <xs:enumeration value="CE" />
      <xs:enumeration value="CH" />
      <xs:enumeration value="CO" />
      <xs:enumeration value="EC" />
      <xs:enumeration value="FR" />
      <xs:enumeration value="GR" />
      <xs:enumeration value="HI" />
      <xs:enumeration value="JE" />
      <xs:enumeration value="JW" />
      <xs:enumeration value="LU" />
      <xs:enumeration value="ME" />
      <xs:enumeration value="MO" />
      <xs:enumeration value="MU" />
      <xs:enumeration value="ND" />
      <xs:enumeration value="NO" />
      <xs:enumeration value="OT" />
      <xs:enumeration value="QU" />
      <xs:enumeration value="RC" />
      <xs:enumeration value="RF" />
      <xs:enumeration value="RU" />
      <xs:enumeration value="SA" />
      <xs:enumeration value="SD" />
      <xs:enumeration value="SI" />
      <xs:enumeration value="UR" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSchoolTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="01" />
      <xs:enumeration value="02" />
      <xs:enumeration value="03" />
      <xs:enumeration value="04" />
      <xs:enumeration value="05" />
      <xs:enumeration value="06" />
      <xs:enumeration value="07" />
      <xs:enumeration value="08" />
      <xs:enumeration value="09" />
      <xs:enumeration value="10" />
      <xs:enumeration value="11" />
      <xs:enumeration value="12" />
      <xs:enumeration value="16" />
      <xs:enumeration value="17" />
      <xs:enumeration value="18" />
      <xs:enumeration value="21" />
      <xs:enumeration value="22" />
      <xs:enumeration value="25" />
      <xs:enumeration value="26" />
      <xs:enumeration value="27" />
      <xs:enumeration value="28" />
      <xs:enumeration value="29" />
      <xs:enumeration value="30" />
      <xs:enumeration value="31" />
      <xs:enumeration value="32" />
      <xs:enumeration value="33" />
      <xs:enumeration value="36" />
      <xs:enumeration value="37" />
      <xs:enumeration value="38" />
      <xs:enumeration value="39" />
      <xs:enumeration value="41" />
      <xs:enumeration value="42" />
      <xs:enumeration value="43" />
      <xs:enumeration value="44" />
      <xs:enumeration value="45" />
      <xs:enumeration value="46" />
      <xs:enumeration value="47" />
      <xs:enumeration value="48" />
      <xs:enumeration value="49" />
      <xs:enumeration value="50" />
      <xs:enumeration value="51" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSENProvisionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N" />
      <xs:enumeration value="A" />
      <xs:enumeration value="P" />
      <xs:enumeration value="S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSENTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="SPLD" />
      <xs:enumeration value="MLD" />
      <xs:enumeration value="SLD" />
      <xs:enumeration value="PMLD" />
      <xs:enumeration value="BESD" />
      <xs:enumeration value="SLCD" />
      <xs:enumeration value="SLCN" />
      <xs:enumeration value="HI" />
      <xs:enumeration value="VI" />
      <xs:enumeration value="MSI" />
      <xs:enumeration value="PD" />
      <xs:enumeration value="PMED" />
      <xs:enumeration value="ASD" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="DNA" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSourceCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="C" />
      <xs:enumeration value="P" />
      <xs:enumeration value="S" />
      <xs:enumeration value="T" />
      <xs:enumeration value="O" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSpecialisedResourcesWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="SR1" />
      <xs:enumeration value="SR2" />
      <xs:enumeration value="SR3" />
      <xs:enumeration value="SR4" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTravellerGypsyCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="GH" />
      <xs:enumeration value="GT" />
      <xs:enumeration value="OT" />
      <xs:enumeration value="TR" />
      <xs:enumeration value="NT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTuitionCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="IL" />
      <xs:enumeration value="PE" />
      <xs:enumeration value="OR" />
      <xs:enumeration value="HP" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTuitionHoursType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="A" />
      <xs:enumeration value="B" />
      <xs:enumeration value="C" />
      <xs:enumeration value="D" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPupilExclusionReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="PP" />
      <xs:enumeration value="PA" />
      <xs:enumeration value="VP" />
      <xs:enumeration value="VA" />
      <xs:enumeration value="BU" />
      <xs:enumeration value="RA" />
      <xs:enumeration value="SM" />
      <xs:enumeration value="DA" />
      <xs:enumeration value="DM" />
      <xs:enumeration value="TH" />
      <xs:enumeration value="DB" />
      <xs:enumeration value="OT" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetChurchOfEnglandDioceseType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BAT" />
      <xs:enumeration value="BIR" />
      <xs:enumeration value="BLA" />
      <xs:enumeration value="BRA" />
      <xs:enumeration value="BRI" />
      <xs:enumeration value="CAN" />
      <xs:enumeration value="CAR" />
      <xs:enumeration value="CHE" />
      <xs:enumeration value="CHS" />
      <xs:enumeration value="CHI" />
      <xs:enumeration value="COV" />
      <xs:enumeration value="DER" />
      <xs:enumeration value="DUR" />
      <xs:enumeration value="ELY" />
      <xs:enumeration value="EXE" />
      <xs:enumeration value="GLO" />
      <xs:enumeration value="GUI" />
      <xs:enumeration value="HER" />
      <xs:enumeration value="LEI" />
      <xs:enumeration value="LIC" />
      <xs:enumeration value="LIN" />
      <xs:enumeration value="LIV" />
      <xs:enumeration value="LON" />
      <xs:enumeration value="MAN" />
      <xs:enumeration value="NEW" />
      <xs:enumeration value="NOR" />
      <xs:enumeration value="OXF" />
      <xs:enumeration value="PET" />
      <xs:enumeration value="POR" />
      <xs:enumeration value="RIP" />
      <xs:enumeration value="ROC" />
      <xs:enumeration value="STA" />
      <xs:enumeration value="STE" />
      <xs:enumeration value="SAL" />
      <xs:enumeration value="SHE" />
      <xs:enumeration value="SOD" />
      <xs:enumeration value="SOU" />
      <xs:enumeration value="SOW" />
      <xs:enumeration value="TRU" />
      <xs:enumeration value="WAK" />
      <xs:enumeration value="WIN" />
      <xs:enumeration value="WOR" />
      <xs:enumeration value="YOR" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetLANameType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BELFAST EDUCATION AND LIBRARY BOARD" />
      <xs:enumeration value="WESTERN EDUCATION AND LIBRARY BOARD" />
      <xs:enumeration value="NORTH EASTERN EDUCATION AND LIBRARY BOARD" />
      <xs:enumeration value="SOUTH EASTERN EDUCATION AND LIBRARY BOARD" />
      <xs:enumeration value="SOUTHERN EDUCATION AND LIBRARY BOARD" />
      <xs:enumeration value="CITY OF LONDON" />
      <xs:enumeration value="CAMDEN" />
      <xs:enumeration value="GREENWICH" />
      <xs:enumeration value="HACKNEY" />
      <xs:enumeration value="HAMMERSMITH and FULHAM" />
      <xs:enumeration value="ISLINGTON" />
      <xs:enumeration value="KENSINGTON and CHELSEA" />
      <xs:enumeration value="LAMBETH" />
      <xs:enumeration value="LEWISHAM" />
      <xs:enumeration value="SOUTHWARK" />
      <xs:enumeration value="TOWER HAMLETS" />
      <xs:enumeration value="WANDSWORTH" />
      <xs:enumeration value="WESTMINSTER" />
      <xs:enumeration value="BARKING and DAGENHAM" />
      <xs:enumeration value="BARNET" />
      <xs:enumeration value="BEXLEY" />
      <xs:enumeration value="BRENT" />
      <xs:enumeration value="BROMLEY" />
      <xs:enumeration value="CROYDON" />
      <xs:enumeration value="EALING" />
      <xs:enumeration value="ENFIELD" />
      <xs:enumeration value="HARINGEY" />
      <xs:enumeration value="HARROW" />
      <xs:enumeration value="HAVERING" />
      <xs:enumeration value="HILLINGDON" />
      <xs:enumeration value="HOUNSLOW" />
      <xs:enumeration value="KINGSTON UPON THAMES" />
      <xs:enumeration value="MERTON" />
      <xs:enumeration value="NEWHAM" />
      <xs:enumeration value="REDBRIDGE" />
      <xs:enumeration value="RICHMOND UPON THAMES" />
      <xs:enumeration value="SUTTON" />
      <xs:enumeration value="WALTHAM FOREST" />
      <xs:enumeration value="BIRMINGHAM" />
      <xs:enumeration value="COVENTRY" />
      <xs:enumeration value="DUDLEY" />
      <xs:enumeration value="SANDWELL" />
      <xs:enumeration value="SOLIHULL" />
      <xs:enumeration value="WALSALL" />
      <xs:enumeration value="WOLVERHAMPTON" />
      <xs:enumeration value="KNOWSLEY" />
      <xs:enumeration value="LIVERPOOL" />
      <xs:enumeration value="ST HELENS" />
      <xs:enumeration value="SEFTON" />
      <xs:enumeration value="WIRRAL" />
      <xs:enumeration value="BOLTON" />
      <xs:enumeration value="BURY" />
      <xs:enumeration value="MANCHESTER" />
      <xs:enumeration value="OLDHAM" />
      <xs:enumeration value="ROCHDALE" />
      <xs:enumeration value="SALFORD" />
      <xs:enumeration value="STOCKPORT" />
      <xs:enumeration value="TAMESIDE" />
      <xs:enumeration value="TRAFFORD" />
      <xs:enumeration value="WIGAN" />
      <xs:enumeration value="BARNSLEY" />
      <xs:enumeration value="DONCASTER" />
      <xs:enumeration value="ROTHERHAM" />
      <xs:enumeration value="SHEFFIELD" />
      <xs:enumeration value="BRADFORD" />
      <xs:enumeration value="CALDERDALE" />
      <xs:enumeration value="KIRKLEES" />
      <xs:enumeration value="LEEDS" />
      <xs:enumeration value="WAKEFIELD" />
      <xs:enumeration value="GATESHEAD" />
      <xs:enumeration value="NEWCASTLE UPON TYNE" />
      <xs:enumeration value="NORTH TYNESIDE" />
      <xs:enumeration value="SOUTH TYNESIDE" />
      <xs:enumeration value="SUNDERLAND" />
      <xs:enumeration value="ISLES OF SCILLY" />
      <xs:enumeration value="SCOTLAND" />
      <xs:enumeration value="ABERDEEN" />
      <xs:enumeration value="ABERDEENSHIRE" />
      <xs:enumeration value="ANGUS" />
      <xs:enumeration value="ARGYLL and BUTE" />
      <xs:enumeration value="CLACKMANNANSHIRE" />
      <xs:enumeration value="DUMFRIES and GALLOWAY" />
      <xs:enumeration value="DUNDEE" />
      <xs:enumeration value="EAST AYRSHIRE" />
      <xs:enumeration value="EAST DUNBARTONSHIRE" />
      <xs:enumeration value="EAST LOTHIAN" />
      <xs:enumeration value="EAST RENFREWSHIRE" />
      <xs:enumeration value="EDINBURGH" />
      <xs:enumeration value="EILEAN SIAR" />
      <xs:enumeration value="FALKIRK" />
      <xs:enumeration value="FIFE" />
      <xs:enumeration value="GLASGOW" />
      <xs:enumeration value="HIGHLAND" />
      <xs:enumeration value="INVERCLYDE" />
      <xs:enumeration value="MIDLOTHIAN" />
      <xs:enumeration value="MORAY" />
      <xs:enumeration value="NORTH AYRSHIRE" />
      <xs:enumeration value="NORTH LANARKSHIRE" />
      <xs:enumeration value="ORKNEY ISLANDS" />
      <xs:enumeration value="PERTH and KINROSS" />
      <xs:enumeration value="RENFREWSHIRE" />
      <xs:enumeration value="SCOTTISH BORDERS" />
      <xs:enumeration value="SHETLAND ISLANDS" />
      <xs:enumeration value="SOUTH AYRSHIRE" />
      <xs:enumeration value="SOUTH LANARKSHIRE" />
      <xs:enumeration value="STIRLING" />
      <xs:enumeration value="WEST DUNBARTONSHIRE" />
      <xs:enumeration value="WEST LOTHIAN" />
      <xs:enumeration value="WESTERN ISLES" />
      <xs:enumeration value="ISLE OF ANGLESEY" />
      <xs:enumeration value="GWYNEDD" />
      <xs:enumeration value="CONWY" />
      <xs:enumeration value="DENBIGHSHIRE" />
      <xs:enumeration value="FLINTSHIRE" />
      <xs:enumeration value="WREXHAM" />
      <xs:enumeration value="POWYS" />
      <xs:enumeration value="CEREDIGION" />
      <xs:enumeration value="PEMBROKESHIRE" />
      <xs:enumeration value="CARMARTHENSHIRE" />
      <xs:enumeration value="SWANSEA" />
      <xs:enumeration value="NEATH PORT TALBOT" />
      <xs:enumeration value="BRIDGEND" />
      <xs:enumeration value="THE VALE OF GLAMORGAN" />
      <xs:enumeration value="RHONDDA CYNON TAFF" />
      <xs:enumeration value="MERTHYR TYDFIL" />
      <xs:enumeration value="CAERPHILLY" />
      <xs:enumeration value="BLAENAU GWENT" />
      <xs:enumeration value="TORFAEN" />
      <xs:enumeration value="MONMOUTHSHIRE" />
      <xs:enumeration value="NEWPORT" />
      <xs:enumeration value="CARDIFF" />
      <xs:enumeration value="SCOTLAND OFFSHORE ESTABLISHMENTS **" />
      <xs:enumeration value="SERVICE CHILDREN'S EDUCATION AUTHORITY" />
      <xs:enumeration value="OTHER OVERSEAS SCHOOLS" />
      <xs:enumeration value="SHELL SCHOOLS" />
      <xs:enumeration value="ISLE OF MAN" />
      <xs:enumeration value="GUERNSEY" />
      <xs:enumeration value="JERSEY" />
      <xs:enumeration value="GIBRALTAR" />
      <xs:enumeration value="BATH and NORTH EAST SOMERSET" />
      <xs:enumeration value="BRISTOL" />
      <xs:enumeration value="NORTH SOMERSET" />
      <xs:enumeration value="SOUTH GLOUCESTERSHIRE" />
      <xs:enumeration value="HARTLEPOOL" />
      <xs:enumeration value="MIDDLESBROUGH" />
      <xs:enumeration value="REDCAR and CLEVELAND" />
      <xs:enumeration value="STOCKTON-ON-TEES" />
      <xs:enumeration value="KINGSTON-UPON-HULL" />
      <xs:enumeration value="EAST RIDING OF YORKSHIRE" />
      <xs:enumeration value="NORTH EAST LINCOLNSHIRE" />
      <xs:enumeration value="NORTH LINCOLNSHIRE" />
      <xs:enumeration value="NORTH YORKSHIRE" />
      <xs:enumeration value="YORK" />
      <xs:enumeration value="BEDFORDSHIRE (PRE 2009 LGR)" />
      <xs:enumeration value="CENTRAL BEDFORDSHIRE" />
      <xs:enumeration value="BEDFORD BOROUGH" />
      <xs:enumeration value="LUTON" />
      <xs:enumeration value="BUCKINGHAMSHIRE" />
      <xs:enumeration value="MILTON KEYNES" />
      <xs:enumeration value="DERBYSHIRE" />
      <xs:enumeration value="DERBY" />
      <xs:enumeration value="DORSET" />
      <xs:enumeration value="POOLE" />
      <xs:enumeration value="BOURNEMOUTH" />
      <xs:enumeration value="DURHAM" />
      <xs:enumeration value="DARLINGTON" />
      <xs:enumeration value="EAST SUSSEX" />
      <xs:enumeration value="BRIGHTON and HOVE" />
      <xs:enumeration value="HAMPSHIRE" />
      <xs:enumeration value="PORTSMOUTH" />
      <xs:enumeration value="SOUTHAMPTON" />
      <xs:enumeration value="LEICESTERSHIRE" />
      <xs:enumeration value="LEICESTER" />
      <xs:enumeration value="RUTLAND" />
      <xs:enumeration value="STAFFORDSHIRE" />
      <xs:enumeration value="STOKE-ON-TRENT" />
      <xs:enumeration value="WILTSHIRE" />
      <xs:enumeration value="SWINDON" />
      <xs:enumeration value="BRACKNELL FOREST" />
      <xs:enumeration value="WINDSOR and MAIDENHEAD" />
      <xs:enumeration value="WEST BERKSHIRE" />
      <xs:enumeration value="READING" />
      <xs:enumeration value="SLOUGH" />
      <xs:enumeration value="WOKINGHAM" />
      <xs:enumeration value="CAMBRIDGESHIRE" />
      <xs:enumeration value="PETERBOROUGH" />
      <xs:enumeration value="CHESHIRE (PRE 2009 LGR)" />
      <xs:enumeration value="CHESHIRE WEST AND CHESTER" />
      <xs:enumeration value="CHESHIRE EAST" />
      <xs:enumeration value="HALTON" />
      <xs:enumeration value="WARRINGTON" />
      <xs:enumeration value="DEVON" />
      <xs:enumeration value="PLYMOUTH" />
      <xs:enumeration value="TORBAY" />
      <xs:enumeration value="ESSEX" />
      <xs:enumeration value="SOUTHEND-ON-SEA" />
      <xs:enumeration value="THURROCK" />
      <xs:enumeration value="HEREFORDSHIRE" />
      <xs:enumeration value="WORCESTERSHIRE" />
      <xs:enumeration value="KENT" />
      <xs:enumeration value="MEDWAY" />
      <xs:enumeration value="LANCASHIRE" />
      <xs:enumeration value="BLACKBURN WITH DARWEN" />
      <xs:enumeration value="BLACKPOOL" />
      <xs:enumeration value="NOTTINGHAMSHIRE" />
      <xs:enumeration value="NOTTINGHAM" />
      <xs:enumeration value="SHROPSHIRE" />
      <xs:enumeration value="TELFORD and WREKIN" />
      <xs:enumeration value="AVON (PRE LGR)" />
      <xs:enumeration value="BEDFORDSHIRE (PRE LGR)" />
      <xs:enumeration value="BERKSHIRE (PRE LGR)" />
      <xs:enumeration value="BUCKINGHAMSHIRE (PRE LGR)" />
      <xs:enumeration value="CAMBRIDGESHIRE (PRE LGR)" />
      <xs:enumeration value="CHESHIRE (PRE LGR)" />
      <xs:enumeration value="CLEVELAND (PRE LGR)" />
      <xs:enumeration value="CORNWALL" />
      <xs:enumeration value="CUMBRIA" />
      <xs:enumeration value="DERBYSHIRE (PRE LGR)" />
      <xs:enumeration value="DEVON (PRE LGR)" />
      <xs:enumeration value="DORSET (PRE LGR)" />
      <xs:enumeration value="DURHAM (PRE LGR)" />
      <xs:enumeration value="EAST SUSSEX (PRE LGR)" />
      <xs:enumeration value="ESSEX (PRE LGR)" />
      <xs:enumeration value="GLOUCESTERSHIRE" />
      <xs:enumeration value="HAMPSHIRE (PRE LGR)" />
      <xs:enumeration value="HEREFORD AND WORCESTER (PRE LGR)" />
      <xs:enumeration value="HERTFORDSHIRE" />
      <xs:enumeration value="HUMBERSIDE (PRE LGR)" />
      <xs:enumeration value="ISLE OF WIGHT" />
      <xs:enumeration value="KENT (PRE LGR)" />
      <xs:enumeration value="LANCASHIRE (PRE LGR)" />
      <xs:enumeration value="LEICESTERSHIRE (PRE LGR)" />
      <xs:enumeration value="LINCOLNSHIRE" />
      <xs:enumeration value="NORFOLK" />
      <xs:enumeration value="NORTH YORKSHIRE (PRE LGR)" />
      <xs:enumeration value="NORTHAMPTONSHIRE" />
      <xs:enumeration value="NORTHUMBERLAND" />
      <xs:enumeration value="NOTTINGHAMSHIRE (PRE LGR)" />
      <xs:enumeration value="OXFORDSHIRE" />
      <xs:enumeration value="SHROPSHIRE (PRE LGR)" />
      <xs:enumeration value="SOMERSET" />
      <xs:enumeration value="STAFFORDSHIRE (PRE LGR)" />
      <xs:enumeration value="SUFFOLK" />
      <xs:enumeration value="SURREY" />
      <xs:enumeration value="WARWICKSHIRE" />
      <xs:enumeration value="WEST SUSSEX" />
      <xs:enumeration value="WILTSHIRE (PRE LGR)" />
      <xs:enumeration value="For CTF purposes where the LA is not known" />
      <xs:enumeration value="For CTF purposes where a school has left the maintained sector" />
      <xs:enumeration value="For transfer of TA and P Scales data for NAA via CTF" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetLanguagesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ACL" />
      <xs:enumeration value="ADA" />
      <xs:enumeration value="AFA" />
      <xs:enumeration value="AFK" />
      <xs:enumeration value="AKA" />
      <xs:enumeration value="AKAF" />
      <xs:enumeration value="AKAT" />
      <xs:enumeration value="ALB" />
      <xs:enumeration value="ALU" />
      <xs:enumeration value="AMR" />
      <xs:enumeration value="ARA" />
      <xs:enumeration value="ARAA" />
      <xs:enumeration value="ARAG" />
      <xs:enumeration value="ARAI" />
      <xs:enumeration value="ARAM" />
      <xs:enumeration value="ARAS" />
      <xs:enumeration value="ARAY" />
      <xs:enumeration value="ARM" />
      <xs:enumeration value="ASM" />
      <xs:enumeration value="ASR" />
      <xs:enumeration value="AYB" />
      <xs:enumeration value="AYM" />
      <xs:enumeration value="AZE" />
      <xs:enumeration value="BAI" />
      <xs:enumeration value="BAL" />
      <xs:enumeration value="BEJ" />
      <xs:enumeration value="BEL" />
      <xs:enumeration value="BEM" />
      <xs:enumeration value="BHO" />
      <xs:enumeration value="BIK" />
      <xs:enumeration value="BLT" />
      <xs:enumeration value="BMA" />
      <xs:enumeration value="BNG" />
      <xs:enumeration value="BNGA" />
      <xs:enumeration value="BNGC" />
      <xs:enumeration value="BNGS" />
      <xs:enumeration value="BSL" />
      <xs:enumeration value="BSQ" />
      <xs:enumeration value="BUL" />
      <xs:enumeration value="CAM" />
      <xs:enumeration value="CAT" />
      <xs:enumeration value="CCE" />
      <xs:enumeration value="CCF" />
      <xs:enumeration value="CGA" />
      <xs:enumeration value="CGR" />
      <xs:enumeration value="CHE" />
      <xs:enumeration value="CHI" />
      <xs:enumeration value="CHIA" />
      <xs:enumeration value="CHIC" />
      <xs:enumeration value="CHIH" />
      <xs:enumeration value="CHIK" />
      <xs:enumeration value="CHIM" />
      <xs:enumeration value="CKW" />
      <xs:enumeration value="CRN" />
      <xs:enumeration value="CTR" />
      <xs:enumeration value="CWA" />
      <xs:enumeration value="CYM" />
      <xs:enumeration value="CZE" />
      <xs:enumeration value="DAN" />
      <xs:enumeration value="DGA" />
      <xs:enumeration value="DGB" />
      <xs:enumeration value="DIN" />
      <xs:enumeration value="DUT" />
      <xs:enumeration value="DZO" />
      <xs:enumeration value="EBI" />
      <xs:enumeration value="EDO" />
      <xs:enumeration value="EFI" />
      <xs:enumeration value="ENB" />
      <xs:enumeration value="ENG" />
      <xs:enumeration value="ESA" />
      <xs:enumeration value="EST" />
      <xs:enumeration value="EWE" />
      <xs:enumeration value="EWO" />
      <xs:enumeration value="FAN" />
      <xs:enumeration value="FIJ" />
      <xs:enumeration value="FIN" />
      <xs:enumeration value="FON" />
      <xs:enumeration value="FRN" />
      <xs:enumeration value="FUL" />
      <xs:enumeration value="GAA" />
      <xs:enumeration value="GAE" />
      <xs:enumeration value="GAL" />
      <xs:enumeration value="GEO" />
      <xs:enumeration value="GER" />
      <xs:enumeration value="GGO" />
      <xs:enumeration value="GKY" />
      <xs:enumeration value="GLG" />
      <xs:enumeration value="GRE" />
      <xs:enumeration value="GREA" />
      <xs:enumeration value="GREC" />
      <xs:enumeration value="GRN" />
      <xs:enumeration value="GUJ" />
      <xs:enumeration value="GUN" />
      <xs:enumeration value="GUR" />
      <xs:enumeration value="HAU" />
      <xs:enumeration value="HDK" />
      <xs:enumeration value="HEB" />
      <xs:enumeration value="HER" />
      <xs:enumeration value="HGR" />
      <xs:enumeration value="HIN" />
      <xs:enumeration value="IBA" />
      <xs:enumeration value="IDM" />
      <xs:enumeration value="IGA" />
      <xs:enumeration value="IGB" />
      <xs:enumeration value="IJO" />
      <xs:enumeration value="ILO" />
      <xs:enumeration value="ISK" />
      <xs:enumeration value="ISL" />
      <xs:enumeration value="ITA" />
      <xs:enumeration value="ITAA" />
      <xs:enumeration value="ITAN" />
      <xs:enumeration value="ITAS" />
      <xs:enumeration value="JAV" />
      <xs:enumeration value="JIN" />
      <xs:enumeration value="JPN" />
      <xs:enumeration value="KAM" />
      <xs:enumeration value="KAN" />
      <xs:enumeration value="KAR" />
      <xs:enumeration value="KAS" />
      <xs:enumeration value="KAU" />
      <xs:enumeration value="KAZ" />
      <xs:enumeration value="KCH" />
      <xs:enumeration value="KGZ" />
      <xs:enumeration value="KHA" />
      <xs:enumeration value="KHY" />
      <xs:enumeration value="KIN" />
      <xs:enumeration value="KIR" />
      <xs:enumeration value="KIS" />
      <xs:enumeration value="KLN" />
      <xs:enumeration value="KMB" />
      <xs:enumeration value="KME" />
      <xs:enumeration value="KNK" />
      <xs:enumeration value="KNY" />
      <xs:enumeration value="KON" />
      <xs:enumeration value="KOR" />
      <xs:enumeration value="KPE" />
      <xs:enumeration value="KRI" />
      <xs:enumeration value="KRU" />
      <xs:enumeration value="KSI" />
      <xs:enumeration value="KSU" />
      <xs:enumeration value="KUR" />
      <xs:enumeration value="KURA" />
      <xs:enumeration value="KURM" />
      <xs:enumeration value="KURS" />
      <xs:enumeration value="LAO" />
      <xs:enumeration value="LBA" />
      <xs:enumeration value="LBAC" />
      <xs:enumeration value="LBAK" />
      <xs:enumeration value="LGA" />
      <xs:enumeration value="LGB" />
      <xs:enumeration value="LGS" />
      <xs:enumeration value="LIN" />
      <xs:enumeration value="LIT" />
      <xs:enumeration value="LNG" />
      <xs:enumeration value="LOZ" />
      <xs:enumeration value="LSO" />
      <xs:enumeration value="LTV" />
      <xs:enumeration value="LTZ" />
      <xs:enumeration value="LUE" />
      <xs:enumeration value="LUN" />
      <xs:enumeration value="LUO" />
      <xs:enumeration value="LUY" />
      <xs:enumeration value="MAG" />
      <xs:enumeration value="MAI" />
      <xs:enumeration value="MAK" />
      <xs:enumeration value="MAN" />
      <xs:enumeration value="MANA" />
      <xs:enumeration value="MANB" />
      <xs:enumeration value="MANJ" />
      <xs:enumeration value="MAO" />
      <xs:enumeration value="MAR" />
      <xs:enumeration value="MAS" />
      <xs:enumeration value="MDV" />
      <xs:enumeration value="MEN" />
      <xs:enumeration value="MKD" />
      <xs:enumeration value="MLG" />
      <xs:enumeration value="MLM" />
      <xs:enumeration value="MLT" />
      <xs:enumeration value="MLY" />
      <xs:enumeration value="MLYA" />
      <xs:enumeration value="MLYI" />
      <xs:enumeration value="MNA" />
      <xs:enumeration value="MNG" />
      <xs:enumeration value="MNX" />
      <xs:enumeration value="MOR" />
      <xs:enumeration value="MSC" />
      <xs:enumeration value="MUN" />
      <xs:enumeration value="MYA" />
      <xs:enumeration value="NAH" />
      <xs:enumeration value="NAM" />
      <xs:enumeration value="NBN" />
      <xs:enumeration value="NDB" />
      <xs:enumeration value="NDBS" />
      <xs:enumeration value="NDBZ" />
      <xs:enumeration value="NEP" />
      <xs:enumeration value="NOR" />
      <xs:enumeration value="NOT" />
      <xs:enumeration value="NUE" />
      <xs:enumeration value="NUP" />
      <xs:enumeration value="NWA" />
      <xs:enumeration value="NZM" />
      <xs:enumeration value="OAM" />
      <xs:enumeration value="OAMK" />
      <xs:enumeration value="OAMN" />
      <xs:enumeration value="OGN" />
      <xs:enumeration value="ORI" />
      <xs:enumeration value="ORM" />
      <xs:enumeration value="OTB" />
      <xs:enumeration value="OTH" />
      <xs:enumeration value="OTL" />
      <xs:enumeration value="PAG" />
      <xs:enumeration value="PAM" />
      <xs:enumeration value="PAT" />
      <xs:enumeration value="PHA" />
      <xs:enumeration value="PHR" />
      <xs:enumeration value="PNJ" />
      <xs:enumeration value="PNJA" />
      <xs:enumeration value="PNJG" />
      <xs:enumeration value="PNJM" />
      <xs:enumeration value="PNJP" />
      <xs:enumeration value="POL" />
      <xs:enumeration value="POR" />
      <xs:enumeration value="PORA" />
      <xs:enumeration value="PORB" />
      <xs:enumeration value="PRS" />
      <xs:enumeration value="PRSA" />
      <xs:enumeration value="PRSD" />
      <xs:enumeration value="PRST" />
      <xs:enumeration value="QUE" />
      <xs:enumeration value="RAJ" />
      <xs:enumeration value="REF" />
      <xs:enumeration value="RME" />
      <xs:enumeration value="RMI" />
      <xs:enumeration value="RMN" />
      <xs:enumeration value="RMNM" />
      <xs:enumeration value="RMNR" />
      <xs:enumeration value="RMS" />
      <xs:enumeration value="RNY" />
      <xs:enumeration value="RNYN" />
      <xs:enumeration value="RNYO" />
      <xs:enumeration value="RUS" />
      <xs:enumeration value="SAM" />
      <xs:enumeration value="SCB" />
      <xs:enumeration value="SCBB" />
      <xs:enumeration value="SCBC" />
      <xs:enumeration value="SCBS" />
      <xs:enumeration value="SCO" />
      <xs:enumeration value="SHL" />
      <xs:enumeration value="SHO" />
      <xs:enumeration value="SID" />
      <xs:enumeration value="SIO" />
      <xs:enumeration value="SLO" />
      <xs:enumeration value="SLV" />
      <xs:enumeration value="SND" />
      <xs:enumeration value="SNG" />
      <xs:enumeration value="SNH" />
      <xs:enumeration value="SOM" />
      <xs:enumeration value="SPA" />
      <xs:enumeration value="SRD" />
      <xs:enumeration value="SRK" />
      <xs:enumeration value="SSO" />
      <xs:enumeration value="SSOO" />
      <xs:enumeration value="SSOT" />
      <xs:enumeration value="SSW" />
      <xs:enumeration value="STS" />
      <xs:enumeration value="SUN" />
      <xs:enumeration value="SWA" />
      <xs:enumeration value="SWAA" />
      <xs:enumeration value="SWAC" />
      <xs:enumeration value="SWAK" />
      <xs:enumeration value="SWAM" />
      <xs:enumeration value="SWAT" />
      <xs:enumeration value="SWE" />
      <xs:enumeration value="TAM" />
      <xs:enumeration value="TEL" />
      <xs:enumeration value="TEM" />
      <xs:enumeration value="TES" />
      <xs:enumeration value="TGE" />
      <xs:enumeration value="TGL" />
      <xs:enumeration value="TGLF" />
      <xs:enumeration value="TGLG" />
      <xs:enumeration value="TGR" />
      <xs:enumeration value="THA" />
      <xs:enumeration value="TIB" />
      <xs:enumeration value="TIV" />
      <xs:enumeration value="TMZ" />
      <xs:enumeration value="TMZA" />
      <xs:enumeration value="TMZK" />
      <xs:enumeration value="TMZT" />
      <xs:enumeration value="TNG" />
      <xs:enumeration value="TON" />
      <xs:enumeration value="TPI" />
      <xs:enumeration value="TRI" />
      <xs:enumeration value="TSO" />
      <xs:enumeration value="TUK" />
      <xs:enumeration value="TUL" />
      <xs:enumeration value="TUM" />
      <xs:enumeration value="TUR" />
      <xs:enumeration value="UKR" />
      <xs:enumeration value="UMB" />
      <xs:enumeration value="URD" />
      <xs:enumeration value="URH" />
      <xs:enumeration value="UYG" />
      <xs:enumeration value="UZB" />
      <xs:enumeration value="VEN" />
      <xs:enumeration value="VIE" />
      <xs:enumeration value="VSY" />
      <xs:enumeration value="VSYA" />
      <xs:enumeration value="VSYH" />
      <xs:enumeration value="VSYS" />
      <xs:enumeration value="VSYW" />
      <xs:enumeration value="WAP" />
      <xs:enumeration value="WCP" />
      <xs:enumeration value="WOL" />
      <xs:enumeration value="WPE" />
      <xs:enumeration value="XHO" />
      <xs:enumeration value="YAO" />
      <xs:enumeration value="YDI" />
      <xs:enumeration value="YOR" />
      <xs:enumeration value="ZND" />
      <xs:enumeration value="ZUL" />
      <xs:enumeration value="ZZZ" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetLearningAndSkillsCouncilAreaCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BAL" />
      <xs:enumeration value="BER" />
      <xs:enumeration value="BIS" />
      <xs:enumeration value="BDP" />
      <xs:enumeration value="CAM" />
      <xs:enumeration value="CHW" />
      <xs:enumeration value="CDU" />
      <xs:enumeration value="COW" />
      <xs:enumeration value="CUM" />
      <xs:enumeration value="DER" />
      <xs:enumeration value="DEC" />
      <xs:enumeration value="ESS" />
      <xs:enumeration value="GLO" />
      <xs:enumeration value="GMA" />
      <xs:enumeration value="GME" />
      <xs:enumeration value="HIW" />
      <xs:enumeration value="HEW" />
      <xs:enumeration value="HER" />
      <xs:enumeration value="HUM" />
      <xs:enumeration value="KEM" />
      <xs:enumeration value="LAN" />
      <xs:enumeration value="LEI" />
      <xs:enumeration value="LIR" />
      <xs:enumeration value="LOC" />
      <xs:enumeration value="LOE" />
      <xs:enumeration value="LON" />
      <xs:enumeration value="LOS" />
      <xs:enumeration value="LOW" />
      <xs:enumeration value="LSC" />
      <xs:enumeration value="MOB" />
      <xs:enumeration value="NOR" />
      <xs:enumeration value="NOY" />
      <xs:enumeration value="NOA" />
      <xs:enumeration value="NOU" />
      <xs:enumeration value="NOT" />
      <xs:enumeration value="SHR" />
      <xs:enumeration value="SOM" />
      <xs:enumeration value="SOY" />
      <xs:enumeration value="STA" />
      <xs:enumeration value="SUF" />
      <xs:enumeration value="SUR" />
      <xs:enumeration value="SUS" />
      <xs:enumeration value="TEV" />
      <xs:enumeration value="TBC" />
      <xs:enumeration value="TYW" />
      <xs:enumeration value="WEE" />
      <xs:enumeration value="WEY" />
      <xs:enumeration value="WIS" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetNationStatesAndCountriesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AFG" />
      <xs:enumeration value="ALA" />
      <xs:enumeration value="ALB" />
      <xs:enumeration value="DZA" />
      <xs:enumeration value="ASM" />
      <xs:enumeration value="AND" />
      <xs:enumeration value="AGO" />
      <xs:enumeration value="AIA" />
      <xs:enumeration value="ATA" />
      <xs:enumeration value="ATG" />
      <xs:enumeration value="ARG" />
      <xs:enumeration value="ARM" />
      <xs:enumeration value="ABW" />
      <xs:enumeration value="AUS" />
      <xs:enumeration value="AUT" />
      <xs:enumeration value="AZE" />
      <xs:enumeration value="BHS" />
      <xs:enumeration value="BHR" />
      <xs:enumeration value="BGD" />
      <xs:enumeration value="BRB" />
      <xs:enumeration value="BLR" />
      <xs:enumeration value="BEL" />
      <xs:enumeration value="BLZ" />
      <xs:enumeration value="BEN" />
      <xs:enumeration value="BMU" />
      <xs:enumeration value="BTN" />
      <xs:enumeration value="BOL" />
      <xs:enumeration value="BIH" />
      <xs:enumeration value="BWA" />
      <xs:enumeration value="BVT" />
      <xs:enumeration value="BRA" />
      <xs:enumeration value="ATB" />
      <xs:enumeration value="IOT" />
      <xs:enumeration value="BRN" />
      <xs:enumeration value="BGR" />
      <xs:enumeration value="BFA" />
      <xs:enumeration value="BUR" />
      <xs:enumeration value="BDI" />
      <xs:enumeration value="BYS" />
      <xs:enumeration value="KHM" />
      <xs:enumeration value="CMR" />
      <xs:enumeration value="CAN" />
      <xs:enumeration value="CTE" />
      <xs:enumeration value="CPV" />
      <xs:enumeration value="CYM" />
      <xs:enumeration value="CAF" />
      <xs:enumeration value="TCD" />
      <xs:enumeration value="CHL" />
      <xs:enumeration value="CHN" />
      <xs:enumeration value="CXR" />
      <xs:enumeration value="CCK" />
      <xs:enumeration value="COL" />
      <xs:enumeration value="COM" />
      <xs:enumeration value="COG" />
      <xs:enumeration value="COD" />
      <xs:enumeration value="COK" />
      <xs:enumeration value="CRI" />
      <xs:enumeration value="HRV" />
      <xs:enumeration value="CUB" />
      <xs:enumeration value="CYP" />
      <xs:enumeration value="CZE" />
      <xs:enumeration value="CSK" />
      <xs:enumeration value="DHY" />
      <xs:enumeration value="YMD" />
      <xs:enumeration value="DNK" />
      <xs:enumeration value="DJI" />
      <xs:enumeration value="DMA" />
      <xs:enumeration value="DOM" />
      <xs:enumeration value="ATN" />
      <xs:enumeration value="TMP" />
      <xs:enumeration value="ECU" />
      <xs:enumeration value="EGY" />
      <xs:enumeration value="SLV" />
      <xs:enumeration value="GNQ" />
      <xs:enumeration value="ERI" />
      <xs:enumeration value="EST" />
      <xs:enumeration value="ETH" />
      <xs:enumeration value="ETH" />
      <xs:enumeration value="FLK" />
      <xs:enumeration value="FRO" />
      <xs:enumeration value="DEU" />
      <xs:enumeration value="FJI" />
      <xs:enumeration value="FIN" />
      <xs:enumeration value="FIN" />
      <xs:enumeration value="FRA" />
      <xs:enumeration value="GUF" />
      <xs:enumeration value="PYF" />
      <xs:enumeration value="ATF" />
      <xs:enumeration value="AFI" />
      <xs:enumeration value="GAB" />
      <xs:enumeration value="GMB" />
      <xs:enumeration value="GEO" />
      <xs:enumeration value="DDR" />
      <xs:enumeration value="DEU" />
      <xs:enumeration value="GHA" />
      <xs:enumeration value="GIB" />
      <xs:enumeration value="GEL" />
      <xs:enumeration value="GEL" />
      <xs:enumeration value="GRC" />
      <xs:enumeration value="GRL" />
      <xs:enumeration value="GRD" />
      <xs:enumeration value="GLP" />
      <xs:enumeration value="GUM" />
      <xs:enumeration value="GTM" />
      <xs:enumeration value="GGY" />
      <xs:enumeration value="GIN" />
      <xs:enumeration value="GNB" />
      <xs:enumeration value="GUY" />
      <xs:enumeration value="HTI" />
      <xs:enumeration value="HMD" />
      <xs:enumeration value="VAT" />
      <xs:enumeration value="HND" />
      <xs:enumeration value="HKG" />
      <xs:enumeration value="HUN" />
      <xs:enumeration value="ISL" />
      <xs:enumeration value="IND" />
      <xs:enumeration value="IDN" />
      <xs:enumeration value="IRN" />
      <xs:enumeration value="IRQ" />
      <xs:enumeration value="IRL" />
      <xs:enumeration value="IMN" />
      <xs:enumeration value="ISR" />
      <xs:enumeration value="ITA" />
      <xs:enumeration value="CIV" />
      <xs:enumeration value="JAM" />
      <xs:enumeration value="JPN" />
      <xs:enumeration value="JEY" />
      <xs:enumeration value="JTN" />
      <xs:enumeration value="JOR" />
      <xs:enumeration value="KHM" />
      <xs:enumeration value="KAZ" />
      <xs:enumeration value="KEN" />
      <xs:enumeration value="KIR" />
      <xs:enumeration value="PRK" />
      <xs:enumeration value="KOR" />
      <xs:enumeration value="KWT" />
      <xs:enumeration value="KGZ" />
      <xs:enumeration value="LAO" />
      <xs:enumeration value="LVA" />
      <xs:enumeration value="LBN" />
      <xs:enumeration value="LSO" />
      <xs:enumeration value="LBR" />
      <xs:enumeration value="LBY" />
      <xs:enumeration value="LIE" />
      <xs:enumeration value="LTU" />
      <xs:enumeration value="LUX" />
      <xs:enumeration value="MAC" />
      <xs:enumeration value="MKD" />
      <xs:enumeration value="MDG" />
      <xs:enumeration value="MWI" />
      <xs:enumeration value="MYS" />
      <xs:enumeration value="MDV" />
      <xs:enumeration value="MLI" />
      <xs:enumeration value="MLT" />
      <xs:enumeration value="MHL" />
      <xs:enumeration value="MTQ" />
      <xs:enumeration value="MRT" />
      <xs:enumeration value="MUS" />
      <xs:enumeration value="MYT" />
      <xs:enumeration value="MEX" />
      <xs:enumeration value="FSM" />
      <xs:enumeration value="MID" />
      <xs:enumeration value="MDA" />
      <xs:enumeration value="MCO" />
      <xs:enumeration value="MNG" />
      <xs:enumeration value="MNE" />
      <xs:enumeration value="MSR" />
      <xs:enumeration value="MAR" />
      <xs:enumeration value="MOZ" />
      <xs:enumeration value="MMR" />
      <xs:enumeration value="NAM" />
      <xs:enumeration value="NRU" />
      <xs:enumeration value="NPL" />
      <xs:enumeration value="NLD" />
      <xs:enumeration value="ANT" />
      <xs:enumeration value="ANT" />
      <xs:enumeration value="NCL" />
      <xs:enumeration value="NHB" />
      <xs:enumeration value="NZL" />
      <xs:enumeration value="NIC" />
      <xs:enumeration value="NER" />
      <xs:enumeration value="NGA" />
      <xs:enumeration value="NIU" />
      <xs:enumeration value="NFK" />
      <xs:enumeration value="MNP" />
      <xs:enumeration value="NOR" />
      <xs:enumeration value="OMN" />
      <xs:enumeration value="PAK" />
      <xs:enumeration value="PLW" />
      <xs:enumeration value="PSE" />
      <xs:enumeration value="PAN" />
      <xs:enumeration value="PCZ" />
      <xs:enumeration value="PNG" />
      <xs:enumeration value="PRY" />
      <xs:enumeration value="PER" />
      <xs:enumeration value="PHL" />
      <xs:enumeration value="PCN" />
      <xs:enumeration value="POL" />
      <xs:enumeration value="PRT" />
      <xs:enumeration value="PRI" />
      <xs:enumeration value="QAT" />
      <xs:enumeration value="REU" />
      <xs:enumeration value="ROU" />
      <xs:enumeration value="RUS" />
      <xs:enumeration value="RWA" />
      <xs:enumeration value="SHN" />
      <xs:enumeration value="KNA" />
      <xs:enumeration value="KNA" />
      <xs:enumeration value="LCA" />
      <xs:enumeration value="SPM" />
      <xs:enumeration value="VCT" />
      <xs:enumeration value="WSM" />
      <xs:enumeration value="SMR" />
      <xs:enumeration value="STP" />
      <xs:enumeration value="SAU" />
      <xs:enumeration value="SEN" />
      <xs:enumeration value="SRB" />
      <xs:enumeration value="SCG" />
      <xs:enumeration value="SYC" />
      <xs:enumeration value="SLE" />
      <xs:enumeration value="SKM" />
      <xs:enumeration value="SGP" />
      <xs:enumeration value="SVK" />
      <xs:enumeration value="SVN" />
      <xs:enumeration value="SLB" />
      <xs:enumeration value="SOM" />
      <xs:enumeration value="ZAF" />
      <xs:enumeration value="SGS" />
      <xs:enumeration value="VDR" />
      <xs:enumeration value="RHO" />
      <xs:enumeration value="ESP" />
      <xs:enumeration value="ESH" />
      <xs:enumeration value="LKA" />
      <xs:enumeration value="SDN" />
      <xs:enumeration value="SUR" />
      <xs:enumeration value="SJM" />
      <xs:enumeration value="SWZ" />
      <xs:enumeration value="SWE" />
      <xs:enumeration value="CHE" />
      <xs:enumeration value="SYR" />
      <xs:enumeration value="TWN" />
      <xs:enumeration value="TJK" />
      <xs:enumeration value="TZA" />
      <xs:enumeration value="THA" />
      <xs:enumeration value="TLS" />
      <xs:enumeration value="TGO" />
      <xs:enumeration value="TKL" />
      <xs:enumeration value="TON" />
      <xs:enumeration value="TTO" />
      <xs:enumeration value="PCI" />
      <xs:enumeration value="TUN" />
      <xs:enumeration value="TUR" />
      <xs:enumeration value="TKM" />
      <xs:enumeration value="TCA" />
      <xs:enumeration value="TUV" />
      <xs:enumeration value="UGA" />
      <xs:enumeration value="UKR" />
      <xs:enumeration value="UKR" />
      <xs:enumeration value="SUN" />
      <xs:enumeration value="ARE" />
      <xs:enumeration value="GBR" />
      <xs:enumeration value="USA" />
      <xs:enumeration value="UMI" />
      <xs:enumeration value="PUS" />
      <xs:enumeration value="HVO" />
      <xs:enumeration value="URY" />
      <xs:enumeration value="UZB" />
      <xs:enumeration value="VUT" />
      <xs:enumeration value="VAT" />
      <xs:enumeration value="VEN" />
      <xs:enumeration value="VNM" />
      <xs:enumeration value="VGB" />
      <xs:enumeration value="VIR" />
      <xs:enumeration value="WAK" />
      <xs:enumeration value="WLF" />
      <xs:enumeration value="ESH" />
      <xs:enumeration value="YEM" />
      <xs:enumeration value="YEM" />
      <xs:enumeration value="YUG" />
      <xs:enumeration value="ZAR" />
      <xs:enumeration value="ZMB" />
      <xs:enumeration value="ZWE" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetRomanCatholicDioceseType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AAB" />
      <xs:enumeration value="BIR" />
      <xs:enumeration value="BRE" />
      <xs:enumeration value="CAR" />
      <xs:enumeration value="CLI" />
      <xs:enumeration value="EAS" />
      <xs:enumeration value="HAL" />
      <xs:enumeration value="HAN" />
      <xs:enumeration value="LAN" />
      <xs:enumeration value="LEE" />
      <xs:enumeration value="LIV" />
      <xs:enumeration value="MEN" />
      <xs:enumeration value="MID" />
      <xs:enumeration value="NOR" />
      <xs:enumeration value="NOT" />
      <xs:enumeration value="PLY" />
      <xs:enumeration value="POR" />
      <xs:enumeration value="SAL" />
      <xs:enumeration value="SHR" />
      <xs:enumeration value="SOU" />
      <xs:enumeration value="WES" />
      <xs:enumeration value="WRE" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="ISO4217CurrencyNamesAndCodeElementsType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AED" />
      <xs:enumeration value="AFN" />
      <xs:enumeration value="ALL" />
      <xs:enumeration value="AMD" />
      <xs:enumeration value="ANG" />
      <xs:enumeration value="AOA" />
      <xs:enumeration value="ARS" />
      <xs:enumeration value="AUD" />
      <xs:enumeration value="AWG" />
      <xs:enumeration value="AZN" />
      <xs:enumeration value="BAM" />
      <xs:enumeration value="BBD" />
      <xs:enumeration value="BDT" />
      <xs:enumeration value="BGN" />
      <xs:enumeration value="BHD" />
      <xs:enumeration value="BIF" />
      <xs:enumeration value="BMD" />
      <xs:enumeration value="BND" />
      <xs:enumeration value="BOB" />
      <xs:enumeration value="BOV" />
      <xs:enumeration value="BRL" />
      <xs:enumeration value="BSD" />
      <xs:enumeration value="BTN" />
      <xs:enumeration value="BWP" />
      <xs:enumeration value="BYR" />
      <xs:enumeration value="BZD" />
      <xs:enumeration value="CAD" />
      <xs:enumeration value="CDF" />
      <xs:enumeration value="CHE" />
      <xs:enumeration value="CHF" />
      <xs:enumeration value="CHW" />
      <xs:enumeration value="CLF" />
      <xs:enumeration value="CLP" />
      <xs:enumeration value="CNY" />
      <xs:enumeration value="COP" />
      <xs:enumeration value="COU" />
      <xs:enumeration value="CRC" />
      <xs:enumeration value="CSD" />
      <xs:enumeration value="CUP" />
      <xs:enumeration value="CVE" />
      <xs:enumeration value="CYP" />
      <xs:enumeration value="CZK" />
      <xs:enumeration value="DJF" />
      <xs:enumeration value="DKK" />
      <xs:enumeration value="DOP" />
      <xs:enumeration value="DZD" />
      <xs:enumeration value="EEK" />
      <xs:enumeration value="EGP" />
      <xs:enumeration value="ERN" />
      <xs:enumeration value="ETB" />
      <xs:enumeration value="EUR" />
      <xs:enumeration value="FJD" />
      <xs:enumeration value="FKP" />
      <xs:enumeration value="GBP" />
      <xs:enumeration value="GEL" />
      <xs:enumeration value="GHC" />
      <xs:enumeration value="GIP" />
      <xs:enumeration value="GMD" />
      <xs:enumeration value="GNF" />
      <xs:enumeration value="GTQ" />
      <xs:enumeration value="GWP" />
      <xs:enumeration value="GYD" />
      <xs:enumeration value="HKD" />
      <xs:enumeration value="HNL" />
      <xs:enumeration value="HRK" />
      <xs:enumeration value="HTG" />
      <xs:enumeration value="HUF" />
      <xs:enumeration value="IDR" />
      <xs:enumeration value="ILS" />
      <xs:enumeration value="INR" />
      <xs:enumeration value="IQD" />
      <xs:enumeration value="IRR" />
      <xs:enumeration value="ISK" />
      <xs:enumeration value="JMD" />
      <xs:enumeration value="JOD" />
      <xs:enumeration value="JPY" />
      <xs:enumeration value="KES" />
      <xs:enumeration value="KGS" />
      <xs:enumeration value="KHR" />
      <xs:enumeration value="KMF" />
      <xs:enumeration value="KPW" />
      <xs:enumeration value="KRW" />
      <xs:enumeration value="KWD" />
      <xs:enumeration value="KYD" />
      <xs:enumeration value="KZT" />
      <xs:enumeration value="LAK" />
      <xs:enumeration value="LBP" />
      <xs:enumeration value="LKR" />
      <xs:enumeration value="LRD" />
      <xs:enumeration value="LSL" />
      <xs:enumeration value="LTL" />
      <xs:enumeration value="LVL" />
      <xs:enumeration value="LYD" />
      <xs:enumeration value="MAD" />
      <xs:enumeration value="MDL" />
      <xs:enumeration value="MGA" />
      <xs:enumeration value="MKD" />
      <xs:enumeration value="MMK" />
      <xs:enumeration value="MNT" />
      <xs:enumeration value="MOP" />
      <xs:enumeration value="MRO" />
      <xs:enumeration value="MTL" />
      <xs:enumeration value="MUR" />
      <xs:enumeration value="MVR" />
      <xs:enumeration value="MWK" />
      <xs:enumeration value="MXN" />
      <xs:enumeration value="MXV" />
      <xs:enumeration value="MYR" />
      <xs:enumeration value="MZN" />
      <xs:enumeration value="NAD" />
      <xs:enumeration value="NGN" />
      <xs:enumeration value="NIO" />
      <xs:enumeration value="NOK" />
      <xs:enumeration value="NPR" />
      <xs:enumeration value="NZD" />
      <xs:enumeration value="OMR" />
      <xs:enumeration value="PAB" />
      <xs:enumeration value="PEN" />
      <xs:enumeration value="PGK" />
      <xs:enumeration value="PHP" />
      <xs:enumeration value="PKR" />
      <xs:enumeration value="PLN" />
      <xs:enumeration value="PYG" />
      <xs:enumeration value="QAR" />
      <xs:enumeration value="ROL" />
      <xs:enumeration value="RON" />
      <xs:enumeration value="RUB" />
      <xs:enumeration value="RWF" />
      <xs:enumeration value="SAR" />
      <xs:enumeration value="SBD" />
      <xs:enumeration value="SCR" />
      <xs:enumeration value="SDD" />
      <xs:enumeration value="SEK" />
      <xs:enumeration value="SGD" />
      <xs:enumeration value="SHP" />
      <xs:enumeration value="SIT" />
      <xs:enumeration value="SKK" />
      <xs:enumeration value="SLL" />
      <xs:enumeration value="SOS" />
      <xs:enumeration value="SRD" />
      <xs:enumeration value="STD" />
      <xs:enumeration value="SVC" />
      <xs:enumeration value="SYP" />
      <xs:enumeration value="SZL" />
      <xs:enumeration value="THB" />
      <xs:enumeration value="TJS" />
      <xs:enumeration value="TMM" />
      <xs:enumeration value="TND" />
      <xs:enumeration value="TOP" />
      <xs:enumeration value="TRY" />
      <xs:enumeration value="TTD" />
      <xs:enumeration value="TWD" />
      <xs:enumeration value="TZS" />
      <xs:enumeration value="UAH" />
      <xs:enumeration value="UGX" />
      <xs:enumeration value="USD" />
      <xs:enumeration value="USN" />
      <xs:enumeration value="USS" />
      <xs:enumeration value="UYU" />
      <xs:enumeration value="UZS" />
      <xs:enumeration value="VEB" />
      <xs:enumeration value="VND" />
      <xs:enumeration value="VUV" />
      <xs:enumeration value="WST" />
      <xs:enumeration value="XAF" />
      <xs:enumeration value="XAG" />
      <xs:enumeration value="XAU" />
      <xs:enumeration value="XBA" />
      <xs:enumeration value="XBB" />
      <xs:enumeration value="XBC" />
      <xs:enumeration value="XBD" />
      <xs:enumeration value="XCD" />
      <xs:enumeration value="XDR" />
      <xs:enumeration value="XFO" />
      <xs:enumeration value="XFU" />
      <xs:enumeration value="XOF" />
      <xs:enumeration value="XPD" />
      <xs:enumeration value="XPF" />
      <xs:enumeration value="XPT" />
      <xs:enumeration value="XTS" />
      <xs:enumeration value="XXX" />
      <xs:enumeration value="YER" />
      <xs:enumeration value="ZAR" />
      <xs:enumeration value="ZMK" />
      <xs:enumeration value="ZWN" />
    </xs:restriction>
  </xs:simpleType>

  <!--ONSParishCouncilNameType-->

  <xs:simpleType name="ONSParishCouncilNameType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--ONSWardCodeType-->

  <xs:simpleType name="ONSWardCodeType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--ONSWardNameType-->

  <xs:simpleType name="ONSWardNameType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--ONSParliamentaryConstituencyCodeType-->

  <xs:simpleType name="ONSParliamentaryConstituencyCodeType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--ONSParliamentaryConstituencyNameType-->

  <xs:simpleType name="ONSParliamentaryConstituencyNameType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--TeachernetLAIdType-->

  <xs:simpleType name="TeachernetLAIdType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--TeachernetEthnicityCodeType-->

  <xs:simpleType name="TeachernetEthnicityCodeType">
    <xs:restriction base="xs:token" />
  </xs:simpleType>


  <!--ReportPackageType-->

  <xs:complexType name="ReportPackageType">
    <xs:complexContent>
      <xs:extension base="sif:AbstractContentPackageType" />
    </xs:complexContent>
  </xs:complexType>


  <!--AbstractContentPackageType-->

  <xs:complexType name="AbstractContentPackageType">
    <xs:sequence>
      <xs:choice>
        <xs:element name="XMLData">
          <xs:complexType>
            <xs:sequence>
              <xs:any processContents="lax" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            </xs:sequence>
            <xs:attribute name="Description" use="optional" type="xs:token" />
          </xs:complexType>
        </xs:element>
        <xs:element name="TextData">
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:string">
                <xs:attribute name="MIMEType" use="optional" type="xs:token" />
                <xs:attribute name="FileName" use="optional" type="xs:token" />
                <xs:attribute name="Description" use="optional" type="xs:token" />
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="BinaryData">
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:base64Binary">
                <xs:attribute name="MIMEType" use="required" type="xs:token" />
                <xs:attribute name="FileName" use="optional" type="xs:token" />
                <xs:attribute name="Description" use="optional" type="xs:token" />
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="Reference">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="URL" type="xs:anyURI" />
            </xs:sequence>
            <xs:attribute name="MIMEType" use="required" type="xs:token" />
            <xs:attribute name="Description" use="optional" type="xs:token" />
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>


  <!--AbstractContentElementType-->

  <xs:complexType name="AbstractContentElementType">
    <xs:sequence>
      <xs:choice>
        <xs:element name="XMLData">
          <xs:complexType>
            <xs:sequence>
              <xs:any processContents="lax" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
            </xs:sequence>
            <xs:attribute name="Description" use="optional" type="xs:token" />
          </xs:complexType>
        </xs:element>
        <xs:element name="TextData">
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:string">
                <xs:attribute name="MIMEType" use="optional" type="xs:token" />
                <xs:attribute name="FileName" use="optional" type="xs:token" />
                <xs:attribute name="Description" use="optional" type="xs:token" />
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="BinaryData">
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:base64Binary">
                <xs:attribute name="MIMEType" use="required" type="xs:token" />
                <xs:attribute name="FileName" use="optional" type="xs:token" />
                <xs:attribute name="Description" use="optional" type="xs:token" />
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="Reference">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="URL" type="xs:anyURI" />
            </xs:sequence>
            <xs:attribute name="MIMEType" use="required" type="xs:token" />
            <xs:attribute name="Description" use="optional" type="xs:token" />
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>


  <!--MonetaryAmountType-->

  <xs:complexType name="MonetaryAmountType">
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute name="Currency" use="optional" type="sif:ISO4217CurrencyNamesAndCodeElementsType" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>


  <!--ObjectNameType-->

  <xs:simpleType name="ObjectNameType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:NCName">
          <xs:maxLength value="64" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
        </xs:restriction>
      </xs:simpleType>
    </xs:restriction>
  </xs:simpleType>


  <!--ServiceNameType-->

  <xs:simpleType name="ServiceNameType">
    <xs:restriction base="xs:NCName" />
  </xs:simpleType>


  <!--ObjectType-->

  <xs:complexType name="ObjectType">
    <xs:sequence xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" namespace="##any" />
    </xs:sequence>
  </xs:complexType>


  <!--ReportDataObjectType-->

  <xs:complexType name="ReportDataObjectType">
    <xs:sequence xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>


  <!--URIOrBinaryType-->

  <xs:simpleType name="URIOrBinaryType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:anyURI" />
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction base="xs:base64Binary" />
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>


  <!--GUIDType-->

  <xs:simpleType name="GUIDType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:pattern value="[0-9A-F]{32}" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
        </xs:restriction>
      </xs:simpleType>
    </xs:restriction>
  </xs:simpleType>


  <!--MsgIdType-->

  <xs:simpleType name="MsgIdType">
    <xs:restriction base="sif:GUIDType" />
  </xs:simpleType>


  <!--RefIdType-->

  <xs:simpleType name="RefIdType">
    <xs:restriction base="sif:GUIDType" />
  </xs:simpleType>


  <!--IdRefType-->

  <xs:simpleType name="IdRefType">
    <xs:restriction base="sif:RefIdType" />
  </xs:simpleType>


  <!--VersionType-->

  <xs:simpleType name="VersionType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          <xs:pattern value="[0-9]+[.][0-9]+(r[0-9]+)?" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
        </xs:restriction>
      </xs:simpleType>
    </xs:restriction>
  </xs:simpleType>


  <!--VersionWithWildcardsType-->

  <xs:simpleType name="VersionWithWildcardsType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          <xs:pattern value="\*|([0-9]+[.]\*)|([0-9]+[.][0-9]+r\*)|([0-9]+[.][0-9]+(r[0-9]+)?)" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
        </xs:restriction>
      </xs:simpleType>
    </xs:restriction>
  </xs:simpleType>


  <!--DefinedProtocolsType-->

  <xs:simpleType name="DefinedProtocolsType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="HTTPS" />
      <xs:enumeration value="HTTP" />
    </xs:restriction>
  </xs:simpleType>


  <!--ExtendedContentType-->

  <xs:complexType name="ExtendedContentType">
    <xs:complexContent mixed="true" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:restriction base="xs:anyType">
        <xs:sequence>
          <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>


  <!--SelectedContentType-->

  <xs:complexType name="SelectedContentType">
    <xs:complexContent mixed="true" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:restriction base="xs:anyType">
        <xs:sequence>
          <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>

</xs:schema>