<!--
		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:annotation>
      <xs:documentation>A common metadata element designed to contain time data, both self-defined and by type.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Type" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>
        This element is designed to contain the time period attached to an object.
        Very long periods (school year, quarter, etc.) and very small periods (second, millisecond, etc.) can be defined.
        This element provides a scoping description of the time metadata enclosed.
      </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Code" minOccurs="0" type="xs:token">
        <xs:annotation>
          <xs:documentation>
      This element provides a place for the application to send structured data (code values, unique identifier, timestamps).
      This code value can, depending upon the use case agreement between agents, be used to qualify the data in the </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>
      Contains a human-readable description of the value in </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Value" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Contains the human-readable value.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <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" minOccurs="0" type="xs:normalizedString" />
                  <xs:element name="Code" minOccurs="0" type="xs:token" />
                  <xs:element name="Name" minOccurs="0" type="xs:normalizedString" />
                  <xs:element name="Value" minOccurs="0" 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" minOccurs="0" type="xs:boolean">
        <xs:annotation>
          <xs:documentation>
      This element allows for the system to tag an object as being explicitly current.
      Although the baseline assumption in SIF is that objects are always current (default value is typically </xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="TimeElement" type="sif:TimeElementType" />


  <!--LifeCycle-->

  <xs:complexType name="LifeCycleType">
    <xs:annotation>
      <xs:documentation>
        This common metadata element describes the life cycle of the object it represents, based on the IEEE LOM LifeCycle element [LOM].
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Created" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DateTime" minOccurs="0" type="xs:dateTime" />
            <xs:element name="Creators" minOccurs="0" nillable="true">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Creator" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
                          <xs:annotation>
                            <xs:documentation>
      Human-readable name of the data's creator. If the object contains system-generated data,
      the name should identify the creating service or application.
    </xs:documentation>
                          </xs:annotation>
                        </xs:element>
                        <xs:element name="ID" minOccurs="0" type="xs:normalizedString">
                          <xs:annotation>
                            <xs:documentation>Unique identifier of the creator.  An email address or URI could be used here.</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                      </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" minOccurs="0" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>Identifier of the system or person that modified the data.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="DateTime" minOccurs="0" type="xs:dateTime">
                    <xs:annotation>
                      <xs:documentation>The date/time the modification occurred.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Description" minOccurs="0" nillable="true" type="xs:string">
                    <xs:annotation>
                      <xs:documentation>Human readable description of the data modifications.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </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:annotation>
      <xs:documentation>
				A common metadata element designed to carry any intellectual property or copyright information, based on the IEEE LOM Rights element [LOM].
			</xs:documentation>
    </xs:annotation>
    <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" minOccurs="0" type="xs:string">
                    <xs:annotation>
                      <xs:documentation>
			A description of the fee structure for this resource.
			Some resources may be licensed differently depending upon their context.
			For example, a content provider might charge one fee structure for resources used in the classroom and a separate fee for those
			resources available to parents from home.
		</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="MeteringType" minOccurs="0" 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" minOccurs="0" maxOccurs="unbounded" type="xs:token" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="NCYearGroupList" minOccurs="0" nillable="true" type="sif:NCYearGroupListType">
        <xs:annotation>
          <xs:documentation>Applicable National Curriculum (NC) Year Group.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SubjectAreaList" minOccurs="0" nillable="true" type="sif:SubjectAreaListType">
        <xs:annotation>
          <xs:documentation>
			This allows subject areas to be associated with an object or query.
			Although there could be overlap with </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="InterestLevels" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="InterestLevel" minOccurs="0" 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" minOccurs="0" 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:annotation>
          <xs:documentation>The title of the content.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Summary" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A summary of the content.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LearningObjectives" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearningObjective" minOccurs="0" maxOccurs="unbounded" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation />
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ResourceTypes" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ResourceType" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation />
              </xs:annotation>
              <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:annotation>
      <xs:documentation>A list of electronic identifiers associated with an entity.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:ElectronicId" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="ElectronicIdList" type="sif:ElectronicIdListType" />


  <!--ElectronicId-->

  <xs:complexType name="ElectronicIdType">
    <xs:annotation>
      <xs:documentation>
        Common element used to specify entity identifiers that are read by electronic equipment. It is used in objects such
        as LearnerPersonal, StaffPersonal, and LibraryPatronStatus.
      </xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="xs:normalizedString">
        <xs:attribute name="Type" use="required">
          <xs:annotation>
            <xs:documentation>Electronic ID type.</xs:documentation>
          </xs:annotation>
          <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:annotation>
        <xs:documentation>URL for a school.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="SchoolURL" type="sif:SchoolURLType" />


  <!--LocalId-->

  <xs:simpleType name="LocalIdType">
    <xs:restriction base="xs:normalizedString">
      <xs:annotation>
        <xs:documentation>
        This is a common element used to define the locally assigned identifier associated with an entity. It is used in
        LearnerPersonal, WorkforcePersonal, SchoolInfo, and other objects.
      </xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="LocalId" type="sif:LocalIdType" />


  <!--SchoolYear-->

  <xs:simpleType name="SchoolYearType">
    <xs:restriction base="xs:gYear">
      <xs:annotation>
        <xs:documentation>School year for which this information is applicable, expressed as the four-digit year in which the school year ends (e.g., "2004" for the 2003-04 school year).</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="SchoolYear" type="sif:SchoolYearType" />


  <!--LastName-->

  <xs:simpleType name="LastNameType">
    <xs:restriction base="xs:normalizedString">
      <xs:annotation>
        <xs:documentation>A person's last name.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="LastName" type="sif:LastNameType" />


  <!--FirstName-->

  <xs:simpleType name="FirstNameType">
    <xs:restriction base="xs:normalizedString">
      <xs:annotation>
        <xs:documentation>A person's first name.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="FirstName" type="sif:FirstNameType" />


  <!--MiddleName-->

  <xs:simpleType name="MiddleNameType">
    <xs:restriction base="xs:normalizedString">
      <xs:annotation>
        <xs:documentation>A person's middle name or initial.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="MiddleName" type="sif:MiddleNameType" />


  <!--Address-->

  <xs:complexType name="AddressType">
    <xs:annotation>
      <xs:documentation>
      This element contains address data, some of which is defined by the BS7666
      International Address and Geographic Location Specification. Other
      elements are present for support of international addresses. Applications
      storing address information in the traditional line format must translate this
      information into the appropriate data elements below.
    </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The locally assigned identifier for this address in the publishing system.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date person began using this address.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date person stopped using this address.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PAON" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Dwelling name, or at least a general description of the location in lieu of having any other information. This is required when no other PAON information is provided.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="StartNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Start (single) dwelling number.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="StartNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Start (single) dwelling number suffix.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>End dwelling number.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>End dwelling number suffix.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </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:annotation>
                <xs:documentation>Sub-dwelling name, or other descriptive information in lieu of having any other information.  This is required when no other SAON data is provided.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="StartNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Start (single) dwelling number.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="StartNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Start (single) dwelling number suffix.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>End dwelling number.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndNumberSuffix" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>End dwelling number suffix.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Street" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The name of the street.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Locality" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The locality name refers to a neighbourhood, suburb, district, village, estate, settlement, or parish that may form part of a town, or stand in its own right within the context of an administrative area.  Where an industrial estate contains streets it is defined as a locality in its own right.  At least one of Locality, Town, or AdministrativeArea must be specified.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Town" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The city name refers to a city or town that is not an adminstrative area, a suburb of an administrative area that does not form part of another town or a London district. At least one of Locality, Town, or AdministrativeArea must be specified.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AdministrativeArea" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The administrative area is a geographic area that may be the highest level local administrative area, and may be a county or a unitary authority, an island or island group, or London. At least one of Locality, Town, or AdministrativeArea must be specified</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="County" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Where applicable, the name of the county.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PostTown" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Post Office usually assigns these based on Sorting Office.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PostCode" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>
      The code allocated by the Post Office (within GBR) to identify a group of postal delivery points.
      Valid Postcode formats are:</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Country" minOccurs="0" nillable="true" type="sif:CountryType">
        <xs:annotation>
          <xs:documentation>Country where physical address is located, if known.  Usually this is going to be 'GBR' but could be outside the UK.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="UniquePropertyReferenceNumber" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:integer">
            <xs:annotation>
              <xs:documentation>The unique Property and Land Reference Number (UPRN) for this address. Numeric: 1 to 12 digits.</xs:documentation>
            </xs:annotation>
            <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:annotation>
              <xs:documentation>The unique Property Street Reference Number (USRN) for this address.  Numeric: 1 to 8 digits.</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>The physical location of an address in terms of Census District, LA Electoral Ward, Parliamentary Constituency, and other defining location-centric characteristics.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GridLocation" minOccurs="0" nillable="true" type="sif:GridLocationType">
        <xs:annotation>
          <xs:documentation>The physical property location coordinates.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="Type" use="required">
      <xs:annotation>
        <xs:documentation>Code that defines the address type.</xs:documentation>
      </xs:annotation>
      <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:annotation>
      <xs:documentation>A list of Address elements.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Address" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="sif:AddressType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:annotation>
                  <xs:documentation>In a Change event, this flag can be used to indicate an element has been deleted from the parent list container. At a minimum the key for the list must also be present.</xs:documentation>
                </xs:annotation>
                <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:unique name="AddressListKey1">
      <xs:selector xpath="./sif:Address" />
      <xs:field xpath="@Type" />
    </xs:unique>
  </xs:element>


  <!--ContactList-->

  <xs:complexType name="ContactListType">
    <xs:annotation>
      <xs:documentation>A list of contact persons associated with a school or LA.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Contact" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="PositionTitle" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>The contact person's position title within the school or LA.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Role" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Role played by this contact in the school or LA.  Any descriptive text is allowed here.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="PublishInDirectory" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Indicates whether or not this contact's information should be published in a directory of school or LA information.</xs:documentation>
              </xs:annotation>
              <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:annotation>
              <xs:documentation>The ID (GUID) of the person listed as a contact. Note that this is any person listed as a contact through either a ContactPersonal, WorkforcePersonal, or even a LearnerPersonal record.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="SIF_RefObject" use="required">
            <xs:annotation>
              <xs:documentation>The object type being referred to. </xs:documentation>
            </xs:annotation>
            <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:annotation>
        <xs:documentation>The 3-character alphabetic country code defined by ISO 3166-1.  Given this code all other code and name information can be obtained directly from the standard.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="Country" type="sif:CountryType" />


  <!--Demographics-->

  <xs:complexType name="DemographicsType">
    <xs:annotation>
      <xs:documentation>Demographic information about a learner, contact, workforce member, etc. This element occurs within objects such as LearnerPersonal, LearnerContact, etc.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="EthnicityList" minOccurs="0" nillable="true" type="sif:EthnicityListType">
        <xs:annotation>
          <xs:documentation>A list of the person's ethnicities by proportion.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Gender" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Person's gender.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="M">
              <xs:annotation>
                <xs:documentation>Male</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="F">
              <xs:annotation>
                <xs:documentation>Female</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="U">
              <xs:annotation>
                <xs:documentation>Unknown</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="W">
              <xs:annotation>
                <xs:documentation>Withheld</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="BirthDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>The person's date of birth.  Required for learners.  Optional for others.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="BirthDateVerification" minOccurs="0" nillable="true" type="sif:UKBirthDateVerificationLevelType">
        <xs:annotation>
          <xs:documentation>Means by which the person's birth date was validated.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PlaceOfBirth" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The person's place of birth--like village, town, city etc.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CountyOfBirth" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The county in which the person was born.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CountryOfBirth" minOccurs="0" nillable="true" type="sif:CountryType">
        <xs:annotation>
          <xs:documentation>The individual's country of birth.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CountriesOfCitizenship" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CountryOfCitizenship" minOccurs="0" maxOccurs="unbounded" type="sif:CountryType">
              <xs:annotation>
                <xs:documentation>The country of legal nationality (i.e. the country which issued the individual's passport).</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CountriesOfResidency" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CountryOfResidency" minOccurs="0" maxOccurs="unbounded" type="sif:CountryType">
              <xs:annotation>
                <xs:documentation>A person's country of residence.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CountryArrivalDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date the person first arrived in the UK.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EnglishProficiency" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="EALSteps" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Based on QCA Steps. (England)</xs:documentation>
              </xs:annotation>
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="S1">
                    <xs:annotation>
                      <xs:documentation>Step 1</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="S2">
                    <xs:annotation>
                      <xs:documentation>Step 2</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="1T">
                    <xs:annotation>
                      <xs:documentation>Level 1 Threshold</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="1S">
                    <xs:annotation>
                      <xs:documentation>Level 1 Secure</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="EALAcquisition" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Based on a differing scale from QCA Steps. (Wales)</xs:documentation>
              </xs:annotation>
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A">
                    <xs:annotation>
                      <xs:documentation>New to English</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="B">
                    <xs:annotation>
                      <xs:documentation>Early Acquisition</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="C">
                    <xs:annotation>
                      <xs:documentation>Developing Competence</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="D">
                    <xs:annotation>
                      <xs:documentation>Compentent</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="E">
                    <xs:annotation>
                      <xs:documentation>Fluent</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="0">
                    <xs:annotation>
                      <xs:documentation>Not applicable</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                </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" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" minOccurs="0" type="sif:TeachernetLanguagesType">
                    <xs:annotation>
                      <xs:documentation>This is the code that specifies the person's language.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Fluent" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>Indicates that the person is fluent in this language.</xs:documentation>
                    </xs:annotation>
                    <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" minOccurs="0">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Type" minOccurs="0" maxOccurs="unbounded">
                          <xs:annotation>
                            <xs:documentation>A typification of the language. i.e. how is this language used?</xs:documentation>
                          </xs:annotation>
                          <xs:simpleType>
                            <xs:restriction base="xs:token">
                              <xs:enumeration value="C">
                                <xs:annotation>
                                  <xs:documentation>Correspondence Language</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                              <xs:enumeration value="F">
                                <xs:annotation>
                                  <xs:documentation>First Language</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                              <xs:enumeration value="M">
                                <xs:annotation>
                                  <xs:documentation>Multiple First Language</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                              <xs:enumeration value="H">
                                <xs:annotation>
                                  <xs:documentation>Home</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                              <xs:enumeration value="T">
                                <xs:annotation>
                                  <xs:documentation>Tuition</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                              <xs:enumeration value="S">
                                <xs:annotation>
                                  <xs:documentation>Second Language</xs:documentation>
                                </xs:annotation>
                              </xs:enumeration>
                            </xs:restriction>
                          </xs:simpleType>
                        </xs:element>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                  <xs:element name="Source" minOccurs="0" nillable="true" type="sif:UKSourceCodeType">
                    <xs:annotation>
                      <xs:documentation>Source of data on use of the specified language.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Study" minOccurs="0" nillable="true" type="sif:UKLanguageStudyType">
                    <xs:annotation>
                      <xs:documentation>The level in which the learner is taught this language at school.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="StudyOther" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>Indicates whether the learner studies subjects in this language at school separate from studying the language itself.</xs:documentation>
                    </xs:annotation>
                    <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:annotation>
          <xs:documentation>The person's marital status.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NonUKSystemImmigrant" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Indicates the learner has recently arrived from a non-English or other common UK language system. (Wales)</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Indicates the person's refugee/asylum seeker status as defined by the United Nations (Article 1 of the 1951 Refugee Convention).</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" type="sif:UKReligiousAffiliationType">
              <xs:annotation>
                <xs:documentation>Person's religious faith.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EducationStatus" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Indicates whether the person is actively attending religious education classes.</xs:documentation>
              </xs:annotation>
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A">
                    <xs:annotation>
                      <xs:documentation>Attends</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="W">
                    <xs:annotation>
                      <xs:documentation>Withdrawn</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="CollectiveWorshipStatus" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Indicates whether the person is participating in religious collective worship.</xs:documentation>
              </xs:annotation>
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="A">
                    <xs:annotation>
                      <xs:documentation>Attends</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="W">
                    <xs:annotation>
                      <xs:documentation>Withdrawn</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="Source" minOccurs="0" nillable="true" type="sif:UKSourceCodeType">
              <xs:annotation>
                <xs:documentation>Source of person's religious affiliation code.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Traveller" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" minOccurs="0" type="sif:UKTravellerGypsyCodeType">
              <xs:annotation>
                <xs:documentation>Code to identify type of traveller/gypsy.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Source" minOccurs="0" type="sif:UKSourceCodeType">
              <xs:annotation>
                <xs:documentation>Source of individual's recorded traveller/gypsy code.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="Demographics" type="sif:DemographicsType" />


  <!--Email-->

  <xs:complexType name="EmailType">
    <xs:annotation>
      <xs:documentation>This element represents an e-mail address of one of a number of types.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="xs:normalizedString">
        <xs:attribute name="Type" use="required">
          <xs:annotation>
            <xs:documentation>This attribute specifies the type of e-mail address.</xs:documentation>
          </xs:annotation>
          <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:annotation>
      <xs:documentation>A list of e-mail addresses associated with an individual.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Email" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="sif:EmailType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:annotation>
                  <xs:documentation>In a Change event, this flag can be used to indicate an element has been deleted from the parent list container. At a minimum the key for the list must also be present.</xs:documentation>
                </xs:annotation>
                <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:unique name="EmailListKey1">
      <xs:selector xpath="./sif:Email" />
      <xs:field xpath="@Type" />
    </xs:unique>
  </xs:element>


  <!--EstablishmentId-->

  <xs:simpleType name="EstablishmentIdType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>The DfES assigned identifier for a school or other educational establishment.  The list of all known Establishment ID's is extensive and available online.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="EstablishmentId" type="sif:EstablishmentIdType" />


  <!--EthnicityList-->

  <xs:complexType name="EthnicityListType">
    <xs:sequence>
      <xs:element name="Ethnicity" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" minOccurs="0" type="sif:TeachernetEthnicityCodeType">
              <xs:annotation>
                <xs:documentation>The general ethnic category which reflects the individual's recognition of his or her community or with which the individual most identifies.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Source" minOccurs="0" type="sif:UKSourceCodeType">
              <xs:annotation>
                <xs:documentation>Source of inidividual's recorded ethnic code.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="EthnicityList" type="sif:EthnicityListType" />


  <!--GridLocation-->

  <xs:complexType name="GridLocationType">
    <xs:annotation>
      <xs:documentation>This element contains a map location. The GridLocation element is utilised within other objects and elements.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="PropertyEasting" minOccurs="0" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>Easting coordinate format.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PropertyNorthing" minOccurs="0" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>
      Northing coordinate for mapping an address. Required when PropertyEasting
      is also specified. This is best represented in a 7.1 format.
    </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Latitude" minOccurs="0" nillable="true" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>Geographical coordinate.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Longitude" minOccurs="0" nillable="true" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>Geographical coordinate. Required when Latitude is also specified.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="GridLocation" type="sif:GridLocationType" />


  <!--LAId-->

  <xs:simpleType name="LAIdType">
    <xs:restriction base="sif:TeachernetLAIdType">
      <xs:annotation>
        <xs:documentation>The 3-digit number assigned to the LA by the DfES.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="LAId" type="sif:LAIdType" />


  <!--LAName-->

  <xs:simpleType name="LANameType">
    <xs:restriction base="sif:TeachernetLANameType">
      <xs:annotation>
        <xs:documentation>The official name of the LA.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="LAName" type="sif:LANameType" />


  <!--LocationContext-->

  <xs:complexType name="LocationContextType">
    <xs:annotation>
      <xs:documentation>The physical location of an address in terms of Census District, LA Electoral Ward, Parliamentary Constituency, and other defining location-centric characteristics.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="CensusDistrict" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>National Population Census Enumeration District.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WardCode" minOccurs="0" type="sif:ONSWardCodeType">
        <xs:annotation>
          <xs:documentation>ONS Ward Code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WardName" minOccurs="0" type="sif:ONSWardNameType">
        <xs:annotation>
          <xs:documentation>ONS Ward Name</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ConstituencyCode" minOccurs="0" nillable="true" type="sif:ONSParliamentaryConstituencyCodeType">
        <xs:annotation>
          <xs:documentation>ONS Parliamentary Constituency Code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ConstituencyName" minOccurs="0" nillable="true" type="sif:ONSParliamentaryConstituencyNameType">
        <xs:annotation>
          <xs:documentation>ONS Parliamentary Constituency Name</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Parish" minOccurs="0" nillable="true" type="sif:ONSParishCouncilNameType">
        <xs:annotation>
          <xs:documentation>ONS Parish Council Name</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ChurchOfEnglandDiocese" minOccurs="0" nillable="true" type="sif:TeachernetChurchOfEnglandDioceseType">
        <xs:annotation>
          <xs:documentation>Church of England Diocese Code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ChurchOfEnglandParish" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Church of England Parish Code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="RomanCatholicDiocese" minOccurs="0" nillable="true" type="sif:TeachernetRomanCatholicDioceseType">
        <xs:annotation>
          <xs:documentation>Roman Catholic Diocese Code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="RomanCatholicParish" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Roman Catholic Parish</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LSCouncilCode" minOccurs="0" nillable="true" type="sif:TeachernetLearningAndSkillsCouncilAreaCodeType">
        <xs:annotation>
          <xs:documentation>Learning and Skills Council area code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CatchmentArea" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>School catchment area description</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="LocationContext" type="sif:LocationContextType" />


  <!--Name-->

  <xs:complexType name="NameType">
    <xs:annotation>
      <xs:documentation>The Name element defines name information for a person and occurs within the PersonalInformation element.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Title" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A title or prefix associated with the name.  If any of: Mr, Mrs, Ms, Miss, Rev, Fr, Dr, Prof, Hon, Sir, Lord, Lady - these must be as shown, otherwise free text.  Note that title is not applicable to learners.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FamilyName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Full legal family name. That part of the person's name which is used to describe family, clan, tribal group, or marital association.  Note that this element is always required.  However, when associated with a contact it may not be possible to know the family name in which case you should add the available information to the FullName element.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GivenName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Full given name (forename) of the person.  Note that this element is always required.  However, when associated with a contact it may not be possible to know the given name in which case you should add the available information to the FullName element.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="MiddleNames" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>All other given or middle names, each separated with a single space character.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FamilyNameFirst" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>An indicator used to identify the naming conventions used by some predominantly non-European, ethnic or language groups and related to the display nature of a name.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>The family name preferred most by the person (as written).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PreferredFamilyNameFirst" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>An indicator used to identify the naming conventions used by some predominantly non-European, ethnic or language groups and related to the display nature of a name.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>The given name preferred most by the person (as written).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Suffix" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Textual suffix like PHD, JP, BSc.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FullName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A free text field for the complete name for display purposes. If this is associated with a ContactPersonal record and the FamilyName and GivenName are not both specified, then this becomes mandatory.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="Type" use="required">
      <xs:annotation>
        <xs:documentation>Code that specifies what type of name this is.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="B">
            <xs:annotation>
              <xs:documentation>Birth name</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="C">
            <xs:annotation>
              <xs:documentation>Current Legal name</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="A">
            <xs:annotation>
              <xs:documentation>Alias / Alternative</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="R">
            <xs:annotation>
              <xs:documentation>Name of Record</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="F">
            <xs:annotation>
              <xs:documentation>Former Name</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="M">
            <xs:annotation>
              <xs:documentation>Married Name</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="P">
            <xs:annotation>
              <xs:documentation>Professional Name</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </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:annotation>
        <xs:documentation>Code representing a National Curriculum Year Group.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="NCYearGroup" type="sif:NCYearGroupType" />


  <!--NCYearGroupList-->

  <xs:complexType name="NCYearGroupListType">
    <xs:annotation>
      <xs:documentation>This is a common element used to specify a collection of supported National Curriculum Year Groups. It is used in SchoolInfo and assessment-related objects.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:NCYearGroup" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>

  <xs:element name="NCYearGroupList" type="sif:NCYearGroupListType" />


  <!--PersonalInformation-->

  <xs:complexType name="PersonalInformationType">
    <xs:annotation>
      <xs:documentation>This element contains basic personal and demographic information related to a person.  This element is part of all "personal" objects, including LearnerPersonal, WorkforcePersonal, and ContactPersonal.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:Name" minOccurs="0" />
      <xs:element name="OtherNames" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:Name" minOccurs="0" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Demographics" minOccurs="0" nillable="true" type="sif:DemographicsType">
        <xs:annotation>
          <xs:documentation>This element contains demographic data.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Email" minOccurs="0" nillable="true" type="sif:EmailType">
        <xs:annotation>
          <xs:documentation>The person's preferred e-mail address.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherEmailList" minOccurs="0" nillable="true" type="sif:EmailListType">
        <xs:annotation>
          <xs:documentation>The person's other e-mail address(es).</xs:documentation>
        </xs:annotation>
        <xs:unique name="EmailListKey2">
          <xs:selector xpath="./sif:Email" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="Address" minOccurs="0" nillable="true" type="sif:AddressType">
        <xs:annotation>
          <xs:documentation>The person's current physical address.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherAddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:annotation>
          <xs:documentation>The person's other address(es).</xs:documentation>
        </xs:annotation>
        <xs:unique name="AddressListKey2">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="PhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType">
        <xs:annotation>
          <xs:documentation>The person's preferred phone number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherPhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:annotation>
          <xs:documentation>The person's other phone number(s).</xs:documentation>
        </xs:annotation>
        <xs:unique name="PhoneNumberListKey1">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="ElectronicIdList" minOccurs="0" nillable="true" type="sif:ElectronicIdListType">
        <xs:annotation>
          <xs:documentation>Electronic identifier(s) associated with this person.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherIdList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="OtherId" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>An "other" identifier associated with this person.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required" type="xs:normalizedString">
                      <xs:annotation>
                        <xs:documentation>Text that describes the type of this other ID.</xs:documentation>
                      </xs:annotation>
                    </xs:attribute>
                  </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:annotation>
      <xs:documentation>This element represents a phone number and occurs within objects such as LearnerPersonal, WorkforcePersonal, etc.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Number" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Phone number. Validation:  0-9 and a leading '+' (for international calls).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Extension" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Phone number extension.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ListedStatus" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Indicates whether or not the phone number is available to the public.</xs:documentation>
        </xs:annotation>
        <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:annotation>
        <xs:documentation>Code that specifies the phone number type.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="PhoneNumber" type="sif:PhoneNumberType" />


  <!--PhoneNumberList-->

  <xs:complexType name="PhoneNumberListType">
    <xs:annotation>
      <xs:documentation>Lists phone numbers associated with an entity.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="PhoneNumber" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="sif:PhoneNumberType">
              <xs:attribute name="SIF_Action" use="optional">
                <xs:annotation>
                  <xs:documentation>In a Change event, this flag can be used to indicate an element has been deleted from the parent list container. At a minimum the key for the list must also be present.</xs:documentation>
                </xs:annotation>
                <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:unique name="PhoneNumberListKey2">
      <xs:selector xpath="./sif:PhoneNumber" />
      <xs:field xpath="@Type" />
    </xs:unique>
  </xs:element>


  <!--SchoolURN-->

  <xs:simpleType name="SchoolURNType">
    <xs:restriction base="sif:EstablishmentIdType">
      <xs:annotation>
        <xs:documentation>The alternate DfES assigned identifier for a school or other educational establishment.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="SchoolURN" type="sif:SchoolURNType" />


  <!--SubjectAreaList-->

  <xs:complexType name="SubjectAreaListType">
    <xs:annotation>
      <xs:documentation>A list of subject areas.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SubjectArea" minOccurs="0" maxOccurs="unbounded" type="sif:UKGeneralSubjectType">
        <xs:annotation>
          <xs:documentation>Subject matter.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="SubjectAreaList" type="sif:SubjectAreaListType" />


  <!--Period-->

  <xs:complexType name="PeriodType">
    <xs:annotation>
      <xs:documentation />
    </xs:annotation>
    <xs:sequence>
      <xs:element name="PeriodIndex" minOccurs="0" type="xs:integer">
        <xs:annotation>
          <xs:documentation>Ordinal position of period within the day (1,2,3,etc)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ShortName" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A short period label</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="LongName" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A long period label</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>Time the period starts</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>Time the period ends</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Type" minOccurs="0">
        <xs:annotation>
          <xs:documentation>What this period represents. Note that currently some programs represent registration, breaks and lunches as a "period" and some don't. This Type could differ from the lesson Type (see section C4) if this teacher is doing something in this period which differs from the majority of the school.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="T">
              <xs:annotation>
                <xs:documentation>teaching period</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="R">
              <xs:annotation>
                <xs:documentation>registration</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="B">
              <xs:annotation>
                <xs:documentation>break</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="L">
              <xs:annotation>
                <xs:documentation>lunch</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="O">
              <xs:annotation>
                <xs:documentation>outside school hours (eg: clubs)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="N">
              <xs:annotation>
                <xs:documentation>other non-teaching</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="X">
              <xs:annotation>
                <xs:documentation>'unused' period (on a non-rectangular cycle)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </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:annotation>
      <xs:documentation>Allows an agent to include data not yet defined within a SIF data object as name/value pairs.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SIF_ExtendedElement" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>A name/value pair, the name being contained in the Name attribute, the value being the element content.</xs:documentation>
          </xs:annotation>
          <xs:complexContent>
            <xs:extension base="sif:ExtendedContentType">
              <xs:attribute name="Name" use="required" type="xs:normalizedString">
                <xs:annotation>
                  <xs:documentation>The name of the extended element. As it is possible that names for extended elements may collide from agent to agent, it is recommended that the names of extended elements be configurable in an agent, or that agents use URIs for the names of extended elements.</xs:documentation>
                </xs:annotation>
              </xs:attribute>
              <!--<xs:attribute ref="xsi:type" use="optional" />-->
              <xs:attribute name="SIF_Action" use="optional">
                <xs:annotation>
                  <xs:documentation>
		In a Change event, this flag can be used to indicate an element has been deleted from the parent list container.  At a minimum the key for the list must also be present.
	  </xs:documentation>
                </xs:annotation>
                <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:unique name="SIF_ExtendedElementsKey1">
      <xs:selector xpath="./sif:SIF_ExtendedElement" />
      <xs:field xpath="@Name" />
    </xs:unique>
  </xs:element>


  <!--SIF_Metadata-->

  <xs:complexType name="SIF_MetadataType">
    <xs:annotation>
      <xs:documentation>A commonly defined container for metadata elements defined within SIF.</xs:documentation>
    </xs:annotation>
    <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" minOccurs="0">
              <xs:annotation>
                <xs:documentation>
        The Impact Level that the object has been raised to. 
      </xs:documentation>
              </xs:annotation>
              <xs:simpleType>
                <xs:restriction base="xs:token">
                  <xs:enumeration value="IL3">
                    <xs:annotation>
                      <xs:documentation>Restricted</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                  <xs:enumeration value="IL4">
                    <xs:annotation>
                      <xs:documentation>Confidential</xs:documentation>
                    </xs:annotation>
                  </xs:enumeration>
                </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:annotation>
      <xs:documentation>A psychological construct measured by the assessment. Operationally, an assessment component or subtest is a class of scores within an assessment that might collectively represent a column within a mark book. Some assessments may consist of only one component, aspect or subtest although it is more common for assessments to have several.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The name used to identify this component or aspect.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The identifier used within the publishing application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ShortDescription" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Shorter description used for column headers in marksheets, etc.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Longer text describing features of the component.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="YearList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Year" minOccurs="0" maxOccurs="unbounded" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>A year with which the component grouping is applicable (by convention this is the end year of an academic year eg: 2007/8  resolves to 2008).</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AssessmentSubjectList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Subject" minOccurs="0" maxOccurs="unbounded" type="sif:UKAssessmentSubjectType">
              <xs:annotation>
                <xs:documentation>A subject area associated with this assessment component or aspect.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="StageList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Stage" minOccurs="0" maxOccurs="unbounded" type="sif:UKAssessmentStageType">
              <xs:annotation>
                <xs:documentation>The assessed stage (this may well be a Keystage List, but there is no reason why it couldn’t be used for other concepts such as NcYear applicability, Level  Exam Level GCSE, A-Level etc.).</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AssessmentResultGradeSetRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The gradeset associated with the component or aspect.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="MarkSetList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="MarkSet" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>Start date of the range validity - ranges should not overlap. If not supplied then assumed to have always been valid in the past.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>End date of the range validity - ranges should not overlap.  If not supplied then assumed to always will be valid in the future.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="MinValue" minOccurs="0" type="xs:decimal">
                    <xs:annotation>
                      <xs:documentation>The minimum value in the range of marks.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="MaxValue" minOccurs="0" type="xs:decimal">
                    <xs:annotation>
                      <xs:documentation>The maximum value in the range of marks.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ComponentType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Defines the associated result format.</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" type="sif:UKAssessmentResultQualifierType">
        <xs:annotation>
          <xs:documentation>Defines the format or type of result(s) awarded.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AssessmentMethod" minOccurs="0" type="sif:UKAssessmentMethodType">
        <xs:annotation>
          <xs:documentation>The method or format of the Assessment.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The supplier/originator/designer/owner of the aspect.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey2">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this aspect or subtest.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentResultComponent" type="sif:AssessmentResultComponentType">
    <xs:unique name="AssessmentResultComponentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentResultComponentGroup-->

  <xs:complexType name="AssessmentResultComponentGroupType">
    <xs:annotation>
      <xs:documentation>High level container describing an assessment or test or common goal.  Each component group contains one or more components, also known as subtests, aspects, or sub-assessments.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Name of the assessment/test/goal.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The identifier used for this entity within the publishing application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The supplier/originator/designer/owner of the described component grouping.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ComponentList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentResultComponentRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>A SIF identifier for an assessment result component.</xs:documentation>
              </xs:annotation>
            </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:unique name="SIF_ExtendedElementsKey3">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a component group.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentResultComponentGroup" type="sif:AssessmentResultComponentGroupType">
    <xs:unique name="AssessmentResultComponentGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentResultGradeSet-->

  <xs:complexType name="AssessmentResultGradeSetType">
    <xs:annotation>
      <xs:documentation>Represents a range of valid grades (over time) for a result.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The locally assigned identifier for this grade set.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The descriptive identifier for the grade set.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Notes" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Explanatory/usage notes for grade set.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The supplier/originator/designer/owner of the gradeset.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GradeSets" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="GradeSet" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" minOccurs="0" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>The start date from which this version is valid.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>The end date until which this version is valid.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Grades" minOccurs="0">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Grade" minOccurs="0" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Title" minOccurs="0" type="xs:normalizedString">
                                <xs:annotation>
                                  <xs:documentation>The visual representation of the grade.</xs:documentation>
                                </xs:annotation>
                              </xs:element>
                              <xs:element name="Description" minOccurs="0" type="xs:normalizedString">
                                <xs:annotation>
                                  <xs:documentation>The meaning of the grade.</xs:documentation>
                                </xs:annotation>
                              </xs:element>
                              <xs:element name="RankOrder" minOccurs="0" type="xs:unsignedInt">
                                <xs:annotation>
                                  <xs:documentation>The rank position of the grade within the set where the highest value is assumed to be the best. While duplicate ranks are allowed they are discouraged.</xs:documentation>
                                </xs:annotation>
                              </xs:element>
                              <xs:element name="NumericValue" minOccurs="0" type="xs:decimal">
                                <xs:annotation>
                                  <xs:documentation>The numeric equivalent value of the grade.</xs:documentation>
                                </xs:annotation>
                              </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="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:unique name="SIF_ExtendedElementsKey4">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this grade set.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentResultGradeSet" type="sif:AssessmentResultGradeSetType">
    <xs:unique name="AssessmentResultGradeSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentLearnerSet-->

  <xs:complexType name="AssessmentLearnerSetType">
    <xs:annotation>
      <xs:documentation>This object describes learners assigned to take an assessment or component grouping (can represent a markbook, exam entry, or an cohort objective).</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="CreationDateTime" minOccurs="0" type="xs:dateTime">
        <xs:annotation>
          <xs:documentation>Date/time assignment is created.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Value supplied by publishing vendor/supplier.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LearnerList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LearnerPersonalRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>The ID (GUID) of a learner assigned to take an assessment.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>Optional reference to the class group(s) to which this will be/are drawn.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) that uniquely identifies the teacher or staff member who created the learner set.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey5">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies an instance of this object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AssessmentResultComponentGroupRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The assessment result component group (test or assessment) associated with the set of listed learners.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentLearnerSet" type="sif:AssessmentLearnerSetType">
    <xs:unique name="AssessmentLearnerSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentSession-->

  <xs:complexType name="AssessmentSessionType">
    <xs:annotation>
      <xs:documentation>A session is an event where an activity is performed by or on a learner set which contributes to the attainment of the objective. Occurs at a place and time (e.g., a test is taken, assignments are handed in, a test is marked).</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SessionDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date on which the activity takes place or starts.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SessionEndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date on which this assessment ends, if different from the start date set in SessionDate.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A title or description for the activity, e.g Math Test.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolInfoRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the school that the event takes place.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Activity" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>The activity which takes place.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>The current status of the session.</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>The GUID that uniquely identifies a teacher or other staff member responsible for administering or assisting the learner with this assessment.</xs:documentation>
              </xs:annotation>
            </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:unique name="SIF_ExtendedElementsKey6">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this session.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AssessmentLearnerSetRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the set of people the session refers to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentSession" type="sif:AssessmentSessionType">
    <xs:unique name="AssessmentSessionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentResponseComponentGroup-->

  <xs:complexType name="AssessmentResponseComponentGroupType">
    <xs:annotation>
      <xs:documentation>High level container describing components of the actual assessment or test paper/quiz taken by the learner. A response component group contains one or more components.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Name of the assessment/test/taken.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The identifier used for this entity within the publishing application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The supplier/originator/designer/owner of the described component grouping.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ComponentList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentResponseComponentRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>The SIF identifier for an assessment response component.</xs:documentation>
              </xs:annotation>
            </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:unique name="SIF_ExtendedElementsKey7">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies an instance of this object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AssessmentSessionRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the assessment session in which the responses were collected.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentResponseComponentGroup" type="sif:AssessmentResponseComponentGroupType">
    <xs:unique name="AssessmentResponseComponentGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerAssessmentResult-->

  <xs:complexType name="LearnerAssessmentResultType">
    <xs:annotation>
      <xs:documentation>A single result for a learner.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SchoolInfoRefId" minOccurs="0" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The school at which the assessment was taken.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AchievementDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date the results were achieved.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Result" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A grade title, a comment, or a mark (dependent on ComponentType of associated aspect). Marks and grades should be valid in the grade set or mark set on the date the assessment was achieved.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ResultStatus" minOccurs="0" type="sif:UKAssessmentResultStatusType">
        <xs:annotation>
          <xs:documentation>Indicates whether the result is estimated, an interim result, provisional, actual result or a target.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AssessmentSessionList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AssessmentSessionRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>The ID (GUID) that uniquely identifies the session associated with the result.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) that uniquely identifies the teacher or staff member who created the result.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Explanatory/usage notes for result.</xs:documentation>
        </xs:annotation>
      </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:annotation>
          <xs:documentation>Use extended elements to define additional information to be preserved with this result data including any learner demographic data known to be valid at the time of assessment and not otherwise specified.</xs:documentation>
        </xs:annotation>
        <xs:unique name="SIF_ExtendedElementsKey8">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this result.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AssessmentComponentRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The assessment component that the result is for.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner achieving the results.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerAssessmentResult" type="sif:LearnerAssessmentResultType">
    <xs:unique name="LearnerAssessmentResultKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerAssessmentResponseSet-->

  <xs:complexType name="LearnerAssessmentResponseSetType">
    <xs:annotation>
      <xs:documentation>The set of all responses provided by a learner while taking an assessment. This information represents the raw input data that is then evaluated to produce one or more scores, marks, or grades for the learner.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Items" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Item" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Response" minOccurs="0" type="xs:string">
                    <xs:annotation>
                      <xs:documentation>Learner selection or response in raw format.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="ResponseStatus" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>Status of the response.</xs:documentation>
                    </xs:annotation>
                    <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:annotation>
                      <xs:documentation>The length of time the learner took to respond.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Mark" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>The mark achieved for this item as evaluated by the assessment tool at the time of assessment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Group" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>The item group within the assessment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="ItemName" minOccurs="0" nillable="true" type="xs:token">
                    <xs:annotation>
                      <xs:documentation>Identifies the item on the assessment by name.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="ItemNumber" minOccurs="0" nillable="true" type="xs:token">
                    <xs:annotation>
                      <xs:documentation>Identifies the item by number on the assessment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="OrderAsked" minOccurs="0" nillable="true" type="xs:decimal">
                    <xs:annotation>
                      <xs:documentation>The order in which the item was asked.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="NumberOfAttempts" minOccurs="0" nillable="true" type="xs:unsignedInt">
                    <xs:annotation>
                      <xs:documentation>The number of times a learner changes their answer or attempts a response.</xs:documentation>
                    </xs:annotation>
                  </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:unique name="SIF_ExtendedElementsKey9">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies this response set.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AssessmentResponseComponentRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the assessment response component that the responses are associated with</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the Learner for whom these responses are.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerAssessmentResponseSet" type="sif:LearnerAssessmentResponseSetType">
    <xs:unique name="LearnerAssessmentResponseSetKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--AssessmentResponseComponent-->

  <xs:complexType name="AssessmentResponseComponentType">
    <xs:annotation>
      <xs:documentation>This object describes a single component of the assessment or test paper/quiz taken by a learner. A response component has one or more responses.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Name" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The identifier used within the publishing application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Optional reference to the school associated with the administration.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The supplier/originator/designer/owner of the described component.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Longer text describing features of the component.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="YearList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Year" minOccurs="0" maxOccurs="unbounded" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>A year with which the component grouping is applicable (by convention this is the end year of an academic year eg: 2007/8 resolves to 2008).</xs:documentation>
              </xs:annotation>
            </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:unique name="SIF_ExtendedElementsKey10">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The GUID that uniquely identifies an instance of this object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="AssessmentResponseComponent" type="sif:AssessmentResponseComponentType">
    <xs:unique name="AssessmentResponseComponentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerAttendance-->

  <xs:complexType name="LearnerAttendanceType">
    <xs:annotation>
      <xs:documentation>This object provides attendance information for a particular learner in a particular school for a particular period of time. The time can be specified as before, during, or after school and may be for any period of time, including lessons.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="AttendanceDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date of the attendance period.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TimeIn" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>The time when the learner began the attendance period.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>The time the attendance period started. StartTime is required when this object represents a lesson</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FinishTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>The time the attendance period finished.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Session" minOccurs="0" nillable="true" type="sif:UKAttendanceSessionType">
        <xs:annotation>
          <xs:documentation>The session within which this attendance mark applies (e.g. AM/PM).  Session is required when StartTime is not specified and the object refers to a session attendance mark (i.e. AttendanceDomain is session).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SessionLabel" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A label associated with the session to further describe the session, when applicable.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AttendanceDomain" minOccurs="0" type="sif:UKAttendanceDomainType">
        <xs:annotation>
          <xs:documentation>The attendance type.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AttendanceCode" minOccurs="0" type="sif:UKAttendanceCodeType">
        <xs:annotation>
          <xs:documentation>The attendance mark/code.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AttendanceNote" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Additional comments. Required when record is specified as a correction.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="RecordTimestamp" minOccurs="0" nillable="true" type="xs:dateTime">
        <xs:annotation>
          <xs:documentation>The date/time when recorded. When more than one record exists using the same RefId, the record with the latest timestamp is assumed to be the most current. This is possible when a record is republished due to corrections.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="InputSource" minOccurs="0" type="sif:UKAttendanceSourceType">
        <xs:annotation>
          <xs:documentation>The source of the attendance record data.  Could be Workforce member, biometric device, or other.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WorkforcePersonalRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the staff member responsible for recording this attendance information.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the group that this attendance applies to. Useful when the attendance period corresponds to a lesson time.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey11">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) assigned to uniquely identify this attendance record.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner for which this attendance mark is recorded.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The school where the attendance mark was taken.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerAttendance" type="sif:LearnerAttendanceType">
    <xs:unique name="LearnerAttendanceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--Identity-->

  <xs:complexType name="IdentityType">
    <xs:annotation>
      <xs:documentation>
        This object allows a system that stores network identities and/or passwords to share them with other applications through SIF. The provider of the Identity object may only support providing an identity or a password, or it may support both.
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SIF_RefId" minOccurs="0">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>
        The SIF RefId of a LearnerPersonal, WorkforcePersonal, or ContactPersonal object.
      </xs:documentation>
          </xs:annotation>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefTypeOrEmpty">
              <xs:attribute name="SIF_RefObject" use="required">
                <xs:annotation>
                  <xs:documentation>
        The type of SIF object that the SIF_RefId attribute identifies.
      </xs:documentation>
                </xs:annotation>
                <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:annotation>
          <xs:documentation>
				Indicates whether or not the Person that this object refers to is the main role for this Identity.
			</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0">
        <xs:annotation>
          <xs:documentation>
        The type of source system that produced this Identityobject.
      </xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>The identification string for this user.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="SchemaName" use="required" type="xs:normalizedString">
                      <xs:annotation>
                        <xs:documentation>The name of the field.</xs:documentation>
                      </xs:annotation>
                    </xs:attribute>
                  </xs:extension>
                </xs:simpleContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
        <xs:unique name="IdentityAssertionsKey1">
          <xs:selector xpath="./sif:IdentityAssertion" />
          <xs:field xpath="@SchemaName" />
        </xs:unique>
      </xs:element>
      <xs:element name="PasswordList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Password" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>A representation of the user's password using the given algorithm.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="sif:XSBase64BinaryOrEmpty">
                    <xs:attribute name="Algorithm" use="required">
                      <xs:annotation>
                        <xs:documentation>The method used to encrypt the user's password. See the implementation details below.</xs:documentation>
                      </xs:annotation>
                      <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:annotation>
                        <xs:documentation>The name of the key to be used for decryption of the password. Left blank for hash algorithms (MD5 and SHA1).</xs:documentation>
                      </xs:annotation>
                    </xs:attribute>
                  </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:annotation>
          <xs:documentation>The globally unique identifier that links together separate Identity objects which reference the same Person.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey12">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The SIF RefId that uniquely identifies this object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Identity" type="sif:IdentityType">
    <xs:unique name="IdentityKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--ContactPersonal-->

  <xs:complexType name="ContactPersonalType">
    <xs:annotation>
      <xs:documentation>This object describes any person created as a contact at a school, LEA, or other institution, or associated with a Learner or other Workforce person.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType">
        <xs:annotation>
          <xs:documentation>The locally-assigned identifier for this person.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element ref="sif:PersonalInformation" minOccurs="0" />
      <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:unique name="SIF_ExtendedElementsKey13">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of a person referenced as a contact. Note that this GUID may be the same GUID assigned to a LearnerPersonal and/or WorkforcePersonal object record.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="ContactPersonal" type="sif:ContactPersonalType">
    <xs:unique name="ContactPersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LAInfo-->

  <xs:complexType name="LAInfoType">
    <xs:annotation>
      <xs:documentation>
      This object contains information about a Local Authority (LA).  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:LAId" minOccurs="0" />
      <xs:element ref="sif:LAName" minOccurs="0" />
      <xs:element name="LAFullName" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The LA's full name.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LAURL" minOccurs="0" nillable="true" type="xs:anyURI">
        <xs:annotation>
          <xs:documentation>URL for the main LA website.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LAAddress" minOccurs="0" nillable="true" type="sif:AddressType">
        <xs:annotation>
          <xs:documentation>The LA's main address information.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:annotation>
          <xs:documentation>A list of the LA's other addresses, if any.</xs:documentation>
        </xs:annotation>
        <xs:unique name="AddressListKey3">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="LAPhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType">
        <xs:annotation>
          <xs:documentation>The LA's primary phone number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:annotation>
          <xs:documentation>A list of the LA's other phone number(s).</xs:documentation>
        </xs:annotation>
        <xs:unique name="PhoneNumberListKey3">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="LAContactList" minOccurs="0" nillable="true" type="sif:ContactListType">
        <xs:annotation>
          <xs:documentation>A list of contacts within the LA.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey14">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The GUID of the LA whose information this is.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LAInfo" type="sif:LAInfoType">
    <xs:unique name="LAInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerAttendanceSummary-->

  <xs:complexType name="LearnerAttendanceSummaryType">
    <xs:annotation>
      <xs:documentation>
      This object provides a summary of a learner's daily attendance and membership information for a given school during the time period between the StartDate and EndDate, inclusive. As such, there may be multiple instances of this object for a learner in a school over the course of an academic school year.  Note that sessions are defined by each school and in most cases is two but can be any number in the range 1-10.  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" minOccurs="0" />
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Starting date of this attendance reporting period.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Ending date of this attendance reporting period.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ReasonsList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Reason" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" minOccurs="0" type="sif:UKAttendanceCodeType">
                    <xs:annotation>
                      <xs:documentation>The attendance code.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Type" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>The attendance code type.</xs:documentation>
                    </xs:annotation>
                    <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" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>The authorised status of the attendance code.</xs:documentation>
                    </xs:annotation>
                    <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" minOccurs="0" type="xs:unsignedInt">
                    <xs:annotation>
                      <xs:documentation>The total number of sessions attributed to this reason between StartDate and EndDate for the specified reason.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SessionsAttendedTotal" minOccurs="0" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>The number of sessions the learner attended school when school was in session between the StartDate and EndDate, inclusive.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SessionsPossible" minOccurs="0" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>The number of sessions the learner was present plus the number of sessions the learner was absent (authorised and unauthorised) when school was in session during the period between the StartDate and EndDate, inclusive.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AuthorisedAbsences" minOccurs="0" nillable="true" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>The number of sessions the learner was absent from school with a valid excuse when school was in session between the StartDate and EndDate, inclusive. Note that ts column can be derived from Reason Status.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="UnauthorisedAbsences" minOccurs="0" nillable="true" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>The number of sessions the learner was absent from school without a valid excuse when school was in session between the StartDate and EndDate, inclusive.  Note that this column can be derived from Reason Status.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AlternativeTuitionHours" minOccurs="0" nillable="true" type="sif:UKTuitionHoursType">
        <xs:annotation>
          <xs:documentation>Number of Alternative Tuition (whole) hours attended between the StartDate and EndDate, inclusive.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="DfeStatutorySessionAttendanceString" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Learner morning and afternoon session registration marks as per DfE statutory definition. This data item is a concatenation of all DfE statutory session attendance codes recorded for the given Learner starting on the morning session of the StartDate this object refers to and ending on the afternoon session of EndDate.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey15">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) assigned to uniquely identify this attendance record.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner for whom this attendance information is being reported.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the school for which this attendance information is being reported.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerAttendanceSummary" type="sif:LearnerAttendanceSummaryType">
    <xs:unique 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:unique>
  </xs:element>


  <!--LearnerContact-->

  <xs:complexType name="LearnerContactType">
    <xs:annotation>
      <xs:documentation>
      This object contains information related to a contact person for a learner.  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Relationship" minOccurs="0" type="sif:UKRelationshipType">
        <xs:annotation>
          <xs:documentation>Defines the relationship of the contact to the learner.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType">
        <xs:annotation>
          <xs:documentation>The locally-assigned identifier for this contact.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContactFlags" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ParentLegalGuardian" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Does the individual have parental or legal guardianship responsibility for the learner?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Does the contact have pickup rights?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Does the learner live with this contact?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Can address information be disclosed?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Does the contact prefer written communcation via email?  Otherwise, postal mail will be used.</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Should this contact be notified in case of emergency?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Is this person to be contacted in case of disciplinary action?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Is the contact at home during normal daytime hours?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Is this person a member of the armed forces?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Does this person provide daily living or personal assistance to the learner?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Does the contact need a translator or interpreter?</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Should this contact be transferred with the Learner if and when the Learner moves?</xs:documentation>
              </xs:annotation>
              <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:annotation>
              <xs:documentation>Number (1-10) indicating the order in which the person should be contacted.  Note that 2 or more contacts may have the same value.</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>Indicates the person who provided the contact sequence order.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey16">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) assigned to uniquely identify this attendance record.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner whose contact this is.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ContactPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this contact.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerContact" type="sif:LearnerContactType">
    <xs:unique name="LearnerContactKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@LearnerPersonalRefId" />
      <xs:field xpath="@ContactPersonalRefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerExclusion-->

  <xs:complexType name="LearnerExclusionType">
    <xs:annotation>
      <xs:documentation>This object contains information related to a learner being excluded from one or more sessions of school.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Category" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Exclusion category.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="FIXD">
              <xs:annotation>
                <xs:documentation>Fixed</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="PERM">
              <xs:annotation>
                <xs:documentation>Permanent</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="LNCH">
              <xs:annotation>
                <xs:documentation>Lunchtime</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Reason" minOccurs="0" type="sif:UKExclusionReasonType">
        <xs:annotation>
          <xs:documentation>Reason for exclusion.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date exclusion takes effect irrespective of any review or appeal. Normally this will not be the same as Date of Leaving (exitDate) and it should be noted that the learner will remain on the schools's roll for a period after this start date.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartSession" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:annotation>
              <xs:documentation>Session to begin exclusion, starting with 1 for the first session of the day. In most cases there are two sessions per day but this is not always the case.  Validation: Number between 1 and 10.</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>Date exclusion concludes.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ActualSessions" minOccurs="0" nillable="true" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>Total number of sessions for which the exclusion is in effect. For lunchtime exclusions, each lunchtime for which the exclusion applies is one session. For fixed term and permanent exclusions, this is one session during the school day. For exclusions that are followed by reinstatement the actual, not the planned number of sessions should be recorded. (Exclusion sessions are used only to calculate the total allowable in a term or academic year and are not the same as an attendance session.)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Appeal" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Is there an appeal against permanent exclusion?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Date for appeal against permanent exclusion.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AppealResult" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>The result of the appeal against permanent exclusion.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="R">
              <xs:annotation>
                <xs:documentation>Reinstatement</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="E">
              <xs:annotation>
                <xs:documentation>Exclusion stands</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="O">
              <xs:annotation>
                <xs:documentation>Reinstatement would be appropriate but not in best interest of learner given other circumstances</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ReinstatementDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date learner was reinstated, if appropriate.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="HeadTeacherNotificationDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date head teacher notified parents, school LA, and home LA (if different) of exclusion.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GovernorMeetingDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date of Governors' meeting with respect to exclusion.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="HearingNoticeOfAppealDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date of exclusion hearing/expiration of notice of appeal.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey17">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of this exclusion.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the excluded learner.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerExclusion" type="sif:LearnerExclusionType">
    <xs:unique name="LearnerExclusionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerGroupEnrolment-->

  <xs:complexType name="LearnerGroupEnrolmentType">
    <xs:annotation>
      <xs:documentation>
      This object contains information about a learner's enrolment in a course (teaching group) or other (class, homeroom or registration) group.  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" minOccurs="0" />
      <xs:element name="EntryDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date from when this enrolment is valid.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date on which the learner's enrolment ends or has ended.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey18">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies this LearnerGroupEnrolment entity.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner to whom the enrolment information applies.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolGroupRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the group in which this learner is enroled.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerGroupEnrolment" type="sif:LearnerGroupEnrolmentType">
    <xs:unique name="LearnerGroupEnrolmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerPersonal-->

  <xs:complexType name="LearnerPersonalType">
    <xs:annotation>
      <xs:documentation>
        This object contains personal information related to a learner. As most
        learners are enroled in the school or establishment publishing this object,
        basic enrolment information is also provided to aid in overall SIF
        performance.
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="sif:LocalIdType">
        <xs:annotation>
          <xs:documentation>The locally-assigned identifier for this learner. This can be the internal pupil number or any other number as determined by the publishing agent.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AlertMsg" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>This is an alert message that is associated with the person.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required">
                      <xs:annotation>
                        <xs:documentation>This attribute specifies what type of alert message this is.</xs:documentation>
                      </xs:annotation>
                      <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" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>Medical alert associated with the person.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Severity" use="required">
                      <xs:annotation>
                        <xs:documentation>The level of severity of this medical alert.</xs:documentation>
                      </xs:annotation>
                      <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" minOccurs="0" />
      <xs:element name="UIPI" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Unique Internal Pupil Number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="UPN" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Unique Pupil Number (UPN) allocated to each learner in maintained schools in England and Wales. It is an identifier for use in the educational context during a child's school career only and subject to Data Protection restrictions.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="UPNAllocationDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date UPN was allocated by the LA.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FormerUPNList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="UPN" minOccurs="0" maxOccurs="unbounded" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>A former UPN assigned to the pupil whilst at a school (eg temporary UPN was allocated when the pupil was first admitted to the school but subsequently replaced by the permanent UPN being retrieved from a previous school).</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ULN" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Unique Learner Number (ULN), a 10-digit number where zero is not allowed as the leading digit.</xs:documentation>
            </xs:annotation>
            <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" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>An external identifier as described by the IdentifierType attribute.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="IdentifierType" use="required">
                      <xs:annotation>
                        <xs:documentation>A code that defines the type of identifier.</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="SCN">
                            <xs:annotation>
                              <xs:documentation>Scottish Candidate Number allocated to each learner in schools in Scotland – both Maintained and Independent. It is an identifier for use in the educational context during a child’s school career and is subject to Data Protection restrictions.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                          <xs:enumeration value="UCI">
                            <xs:annotation>
                              <xs:documentation>Unique Candidate Number</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                          <xs:enumeration value="LocalExamNo">
                            <xs:annotation>
                              <xs:documentation>Exam number assigned internally by an establishment.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                          <xs:enumeration value="Other">
                            <xs:annotation>
                              <xs:documentation />
                            </xs:annotation>
                          </xs:enumeration>
                        </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:annotation>
          <xs:documentation>Indicates type of family structure learner is living in.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="InCare" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Current" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Indicates if the learner is "looked after" currently.</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Type of care the learner is in (eg fostering, children's home).</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="sif:LAId" minOccurs="0" />
            <xs:element name="AtCurrentSchool" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Indicates if the learner has ever been in care while at this school.</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Indicates if the learner in care has a personal education plan.</xs:documentation>
              </xs:annotation>
              <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:annotation>
          <xs:documentation>Indicates if parents have consented to allow learner data to be shared with Connexions (Middle, Secondary and Special Schools only).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ChildProtectionRegister" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="IsRegistered" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Indicates if the learner has been registered on the Child Protection Register.</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>The LA in which the learner was registered for protection.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="SiblingRegistered" minOccurs="0" nillable="true">
              <xs:annotation>
                <xs:documentation>Indicates if the learner has a sibling that is also on the Child Protection Register.</xs:documentation>
              </xs:annotation>
              <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:annotation>
          <xs:documentation>Learner qualifies for Gifted/Talented status.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>The LA in which the learner lives but not necessarily the one in which they attend school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LearnerIdentity" minOccurs="0" nillable="true" type="sif:UKLearnerIdentityType">
        <xs:annotation>
          <xs:documentation>Classification of national identity. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ModeOfTravel" minOccurs="0" nillable="true" type="sif:UKUsualModeOfTravelType">
        <xs:annotation>
          <xs:documentation>The usual mode of travel normally used by the learner for the greater part (in distance) of the journey to and from school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Pregnant" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Learner is pregnant.</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LearnerPersonalRefId" minOccurs="0" type="sif:IdRefType">
                    <xs:annotation>
                      <xs:documentation>The ID (GUID) of the LearnerPersonal record for this sibling.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="UIPI" minOccurs="0" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>The Unique Internal Pupil Number for a sibling of this learner.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="UniformAllowance" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Learner is paid a uniform allowance.</xs:documentation>
        </xs:annotation>
        <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:annotation>
                  <xs:documentation>
        The SIF RefId of a SchoolInfo or LAInfo object.
      </xs:documentation>
                </xs:annotation>
                <xs:simpleContent>
                  <xs:extension base="sif:IdRefTypeOrEmpty">
                    <xs:attribute name="SIF_RefObject" use="optional">
                      <xs:annotation>
                        <xs:documentation>
        The type of SIF object that the SIF_RefId attribute identifies.
      </xs:documentation>
                      </xs:annotation>
                      <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" minOccurs="0" />
            <xs:element ref="sif:EstablishmentId" minOccurs="0" />
            <xs:element ref="sif:NCYearGroup" minOccurs="0" />
          </xs:sequence>
          <xs:attribute name="LearnerSchoolEnrolmentRefId" use="required" type="sif:IdRefType">
            <xs:annotation>
              <xs:documentation>The ID (GUID) of the LearnerSchoolEnrolment record associated with this learner that is also designated as the current or current main enrolment.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute name="MembershipType" use="optional" type="sif:UKLearnerEnrolmentStatusType">
            <xs:annotation>
              <xs:documentation>The type of this enrolment as it relates to the school identified by SchoolInfoRefId.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </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:annotation>
                      <xs:documentation>Establishment Number for this school</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EstablishmentName" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>School's name as indicated on the Annual Schools Census.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType">
                    <xs:annotation>
                      <xs:documentation>The 3-digit LA number assigned by DfES.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EntryDate" minOccurs="0" nillable="true" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>The date the learner entered this school or establishment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>The date the learner exited this school or establishment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="ExitType" minOccurs="0" nillable="true" type="sif:UKLeavingReasonType">
                    <xs:annotation>
                      <xs:documentation>Code indicating the type of exit from this school or establishment.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="LastSchool" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>An indication of whether the described school or establishment was the last establishment the learner attended. Note that it is possible that more than one establishment can be marked as LastSchool when a learner is enroled in more than one school simultaneously.</xs:documentation>
                    </xs:annotation>
                    <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:unique name="SIF_ExtendedElementsKey19">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner. Note that this GUID may be the same one assigned to this person when this person is either a contact (ContactPersonal) or a member of the workforce (WorkforcePersonal).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerPersonal" type="sif:LearnerPersonalType">
    <xs:unique name="LearnerPersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerSchoolEnrolment-->

  <xs:complexType name="LearnerSchoolEnrolmentType">
    <xs:annotation>
      <xs:documentation>
        This object defines information related to a learner's enrolment within a
        particular school or establishment.The current status on an enrolment is
        based on EntryDate and ExitDate. Future enrolments are supported where
        EntryDate is in the future. ExitDate may also be specified as a future
        occurance.
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="EntryDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date from when this enrolment is valid.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NCYearGroupActual" minOccurs="0" type="sif:NCYearGroupType">
        <xs:annotation>
          <xs:documentation>The year group in which the learner is taught for the majority of their time, regardless of their chronological age.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ClassType" minOccurs="0" nillable="true" type="sif:UKClassTypeType">
        <xs:annotation>
          <xs:documentation>Indicates if the learner is in a nursery class. Must be set to 'O'  if age on August 31 is &gt;= 6.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ExitDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>The ending date of this enrolment. If the learner has exited before the end of the school year, ExitDate must have a value.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ExitType" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Code" minOccurs="0" type="sif:UKLeavingReasonType">
              <xs:annotation>
                <xs:documentation>Code indicating the type of exit for this enrolment.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Destination" minOccurs="0" nillable="true">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Code" minOccurs="0" type="sif:UKLeavingDestinationType">
                    <xs:annotation>
                      <xs:documentation>Code indicating the destination type.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="LAId" minOccurs="0" nillable="true" type="sif:LAIdType">
                    <xs:annotation>
                      <xs:documentation>The LA number for destination school or college.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EstablishmentId" minOccurs="0" nillable="true" type="sif:EstablishmentIdType">
                    <xs:annotation>
                      <xs:documentation>The DfES number for destination school or college.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Name" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>Name of institution/employer of learner's destination.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </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:annotation>
              <xs:documentation>Number of learner sessions (half days) per week.  A maximum of 10 is possible per week.</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>An indication of whether the learner is enroled only part time.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Indicates whether the learner is a boarder at the school or not.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AlternativeTuition" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Category" minOccurs="0" type="sif:UKTuitionCategoryType">
              <xs:annotation>
                <xs:documentation>Reason for alternative tuition.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="StartDate" minOccurs="0" type="xs:date">
              <xs:annotation>
                <xs:documentation>Beginning date for alternative tuition.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
              <xs:annotation>
                <xs:documentation>End date for alternative tuition.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="TotalHours" minOccurs="0" nillable="true" type="xs:unsignedInt">
              <xs:annotation>
                <xs:documentation>The total number of hours provided for with the tuition.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="ProvisionType" minOccurs="0" type="sif:UKAlternativeTuitionProvisionTypeType">
              <xs:annotation>
                <xs:documentation>Alternative tuition provision type.</xs:documentation>
              </xs:annotation>
            </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:unique name="SIF_ExtendedElementsKey20">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a particular enrolment.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner to whom this information is linked.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the school to which this enrolment applies.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MembershipType" use="required" type="sif:UKLearnerEnrolmentStatusType">
      <xs:annotation>
        <xs:documentation>The type of this enrolment as it relates to the school identified by SchoolInfoRefId.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerSchoolEnrolment" type="sif:LearnerSchoolEnrolmentType">
    <xs:unique name="LearnerSchoolEnrolmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerSpecialNeeds-->

  <xs:complexType name="LearnerSpecialNeedsType">
    <xs:annotation>
      <xs:documentation>
        This object contains information regarding a special education need (SEN)
        for a learner when provisioned within a school or establishment. A new
        object exists for each provision. The current status of any provision can be
        determined by querying StartDate and EndDate. Both dates are allowed to
        be in the future. The publisher of this object must support queries on these
        dates.
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="UnitMember" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Is this learner with special education needs (SEN) in a mainstream school a member of an SEN Unit (sometimes called special class)?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Is this learner with special education needs (SEN) in a mainstream school a member of a resourced provision?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Date of learner's next SEN review.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Provision" minOccurs="0" type="sif:UKSENProvisionType">
        <xs:annotation>
          <xs:documentation>A provision (stage) accommodated for this learner within this school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>
      Date when learner was placed on the current SEN stage. Date may be in the
      future.
    </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date when learner finished this SEN stage.  Assumed to be current unless a date in the past is specified here.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SENTypeList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SENType" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:annotation>
                  <xs:documentation>The code for a Special Educational Need (type) for this learner. </xs:documentation>
                </xs:annotation>
                <xs:simpleContent>
                  <xs:extension base="sif:UKSENTypeTypeOrEmpty">
                    <xs:attribute name="Ranking" use="required" type="xs:unsignedInt">
                      <xs:annotation>
                        <xs:documentation>A value (starting at 1) indicating the order of significance of special educational need in relation to other SEN types listed here.</xs:documentation>
                      </xs:annotation>
                    </xs:attribute>
                  </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:annotation>
          <xs:documentation>Level of provision for Advice and Assessment. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GroupingAndSupportLevel" minOccurs="0" nillable="true" type="sif:UKGroupingAndSupportWalesType">
        <xs:annotation>
          <xs:documentation>Level of provision for Grouping and Support. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SpecialisedResourcesLevel" minOccurs="0" nillable="true" type="sif:UKSpecialisedResourcesWalesType">
        <xs:annotation>
          <xs:documentation>Level of provision for Specialised Resources. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TeachingMethodsLevel" minOccurs="0" nillable="true" type="sif:UKCurriculumAndTeachingMethodsWalesType">
        <xs:annotation>
          <xs:documentation>Level of provision for Curriculum and Teaching Methods. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EmbeddedBasicSkillsSupport" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Provision of Embedded Basic Skills support beyond the attainment of formal qualification.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Level of literacy at start of this SEN stage. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LiteracyLevelEnd" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Level of literacy achieved by the end of this SEN stage. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NumeracyLevelStart" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Level of numeracy at start of this SEN stage. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NumeracyLevelEnd" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Level of numeracy achieved by the end of this SEN stage. (Wales)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NationalCurriculumList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="NationalCurriculum" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Modification" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>How is the National Curriculum used for this learner?</xs:documentation>
                    </xs:annotation>
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="M">
                          <xs:annotation>
                            <xs:documentation>Modified</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="N">
                          <xs:annotation>
                            <xs:documentation>Disapplied</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="Subject" minOccurs="0" type="sif:UKGeneralSubjectType">
                    <xs:annotation>
                      <xs:documentation>National Curriculum subject(s) for which modification or disapplication applies.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MedicalFlag" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Is there medical information on this Learner?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Type of therapy needed by Learner.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="P">
              <xs:annotation>
                <xs:documentation>Physiotherapy</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="S">
              <xs:annotation>
                <xs:documentation>Speech Therapy</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="O">
              <xs:annotation>
                <xs:documentation>Occupational Therapy</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="MedicalNotes" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Summary of learner's medical condition.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey21">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a learner special need (provision).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the learner with special educational needs.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies the school provisioned to work with the learner's special needs.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerSpecialNeeds" type="sif:LearnerSpecialNeedsType" />


  <!--PersonPicture-->

  <xs:complexType name="PersonPictureType">
    <xs:annotation>
      <xs:documentation>
      This object either contains or references a person's picture.  Compare with US/Canada objects: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SIF_RefObjectList" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SIF_RefObject" minOccurs="0">
              <xs:annotation>
                <xs:documentation>The name of a "personal" object that can be requested for this person using the specified PersonRefId.</xs:documentation>
              </xs:annotation>
              <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" minOccurs="0" />
      <xs:element name="PictureSource" minOccurs="0">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>This element defines the picture. If the Type attribute is URL, this is the location of the picture in [JPEG] format; if Type is JPEG, this is the [JPEG] image data encoded using the Base64 Content-Transfer-Encoding defined in Section 6.8 of [RFC 2045].</xs:documentation>
          </xs:annotation>
          <xs:simpleContent>
            <xs:extension base="sif:URIOrBinaryTypeOrEmpty">
              <xs:attribute name="Type" use="required">
                <xs:annotation>
                  <xs:documentation>The way the picture is specified (URL or JPEG).</xs:documentation>
                </xs:annotation>
                <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:annotation>
          <xs:documentation>Can the picture be published?</xs:documentation>
        </xs:annotation>
        <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:unique name="SIF_ExtendedElementsKey22">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="PersonRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>This is the GUID of the person whose picture this is.  It is important to note that using the same GUID a person may have a LearnerPersonal record, a WorkforcePersonal record, and a ContactPersonal record all at the same time.  This same picture is applicable regardless of the associated object type(s).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="PersonPicture" type="sif:PersonPictureType">
    <xs:unique name="PersonPictureKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@PersonRefId" />
    </xs:unique>
  </xs:element>


  <!--SchoolGroupType-->

  <xs:complexType name="SchoolGroupTypeType">
    <xs:annotation>
      <xs:documentation>
      This object describes a high-level course or class grouping organised and/or taught within a school or establishment.  Note that not all courses are based upon a subject area.  One such course is "Class Group" which is the same as a homeroom or registration group.  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Code" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The school defined local code for the group (or course).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Title" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Title associated with this group.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Textual description for the group.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SubjectAreaList" minOccurs="0" nillable="true" type="sif:SubjectAreaListType">
        <xs:annotation>
          <xs:documentation>Subject matter areas taught as part of the course, if any.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey23">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The GUID that uniquely identifies a school course.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that references the school or establishment where the course is offered or the registration group exists.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolYear" use="required" type="sif:SchoolYearType">
      <xs:annotation>
        <xs:documentation>School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g. 2007 for the 2006/07 school year). Where a group membership is valid across multiple years, the current year at the time of publication will be used.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="GroupType" use="required">
      <xs:annotation>
        <xs:documentation>The group type.  Teaching groups are used to teach subjects while other groups are organised for various other reasons.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:enumeration value="G">
            <xs:annotation>
              <xs:documentation>Generic Group</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="R">
            <xs:annotation>
              <xs:documentation>Registration/Class Group</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="T">
            <xs:annotation>
              <xs:documentation>Teaching (course) Group</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolGroupType" type="sif:SchoolGroupTypeType">
    <xs:unique name="SchoolGroupTypeKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--SchoolGroup-->

  <xs:complexType name="SchoolGroupType">
    <xs:annotation>
      <xs:documentation>
      This object describes a specific group and includes resource and time tabling information.  All groups are based upon a SchoolGroupType record. However, there are courses which are not based upon any subject area and likewise may not have any teachers or other staff assigned.  Compare with US/Canada object:  </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:LocalId" minOccurs="0" />
      <xs:element name="GroupName" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The name associated with this group for display purposes.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A textual description.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ParentSchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The parent group associated with this group, if any.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ScheduleInfoList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ScheduleInfo" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TeacherList" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Teacher" minOccurs="0" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Role" minOccurs="0" nillable="true" type="sif:UKGroupRoleType">
                                <xs:annotation>
                                  <xs:documentation>The role associated with this person in the context of this group.</xs:documentation>
                                </xs:annotation>
                              </xs:element>
                            </xs:sequence>
                            <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:IdRefType">
                              <xs:annotation>
                                <xs:documentation>The ID (GUID) of a teacher, staff member, or other employee participating in a non-learner capacity within this group.</xs:documentation>
                              </xs:annotation>
                            </xs:attribute>
                          </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:unique name="SIF_ExtendedElementsKey24">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies this group entity.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolGroupTypeRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that identifies a course upon which this group is centered. Note that this element is mandatory when GroupType is associated with a course (teaching group).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolYear" use="required" type="sif:SchoolYearType">
      <xs:annotation>
        <xs:documentation>School year for which the group is applicable, expressed as the four-digit year in which the school year ends (e.g. 2007 for the 2006/07 school year). Where a group membership is valid across multiple years, the current year at the time of publication will be used.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolGroup" type="sif:SchoolGroupType">
    <xs:unique name="SchoolGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--SchoolInfo-->

  <xs:complexType name="SchoolInfoType">
    <xs:annotation>
      <xs:documentation>This object contains basic information about a school or other educational establishment.  Compare with US/Canada object with the same name.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>An ID assigned by the publishing agent for this school or establishment. This may be set to any value.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element ref="sif:EstablishmentId" minOccurs="0" />
      <xs:element ref="sif:LAId" minOccurs="0" />
      <xs:element name="SchoolName" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>School's name as indicated on the Annual Schools Census.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolFullName" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>School's full name as stated in the Instrument of Government.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="URN" minOccurs="0" nillable="true" type="sif:SchoolURNType">
        <xs:annotation>
          <xs:documentation>School Unique Reference Number.  This number is an alternate to the Establishment Number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolURL" minOccurs="0" nillable="true" type="sif:SchoolURLType">
        <xs:annotation>
          <xs:documentation>URL for the school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolAddress" minOccurs="0" nillable="true" type="sif:AddressType">
        <xs:annotation>
          <xs:documentation>The school's published address.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:annotation>
          <xs:documentation>Other addresses associated with the school.</xs:documentation>
        </xs:annotation>
        <xs:unique name="AddressListKey4">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="SchoolPhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType">
        <xs:annotation>
          <xs:documentation>The main phone number for this school/establishment.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherPhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:annotation>
          <xs:documentation>A list of the school's phone numbers.</xs:documentation>
        </xs:annotation>
        <xs:unique name="PhoneNumberListKey4">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="SchoolEmail" minOccurs="0" nillable="true" type="sif:EmailType">
        <xs:annotation>
          <xs:documentation>School's email address for general correspondence.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolContactList" minOccurs="0" nillable="true" type="sif:ContactListType">
        <xs:annotation>
          <xs:documentation>A list of contacts at the school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="HeadTeacherInfo" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ContactName" minOccurs="0" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>The name of the head Teacher.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="ContactTitle" minOccurs="0" nillable="true" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>The official title of the Head Teacher.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Phase" minOccurs="0" nillable="true" type="sif:UKPhaseTypeType">
        <xs:annotation>
          <xs:documentation>The high level code indicating the level of the educational institution.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolType" minOccurs="0" nillable="true" type="sif:UKSchoolTypeType">
        <xs:annotation>
          <xs:documentation>An indication of the level of the educational institution.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Governance" minOccurs="0" nillable="true" type="sif:UKGovernanceTypeType">
        <xs:annotation>
          <xs:documentation>Governance afforded to this school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Intake" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Intake type.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="COMP">
              <xs:annotation>
                <xs:documentation>Comprehensive</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="SEL1">
              <xs:annotation>
                <xs:documentation>Selective (Grammar)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="SEL2">
              <xs:annotation>
                <xs:documentation>Secondary Modern</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="SEL3">
              <xs:annotation>
                <xs:documentation>Selective (Technical)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="SEL4">
              <xs:annotation>
                <xs:documentation>Religious School</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="NCYearGroupList" minOccurs="0" nillable="true" type="sif:NCYearGroupListType">
        <xs:annotation>
          <xs:documentation>Collection of National Curriculum Year Groups offered in this school or establishment.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GenderOfEntry" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Gender of learners allowed for entry to school.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="C">
              <xs:annotation>
                <xs:documentation>Coeducational</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="F">
              <xs:annotation>
                <xs:documentation>Female only</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="M">
              <xs:annotation>
                <xs:documentation>Male only</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="GenderSixthForm" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Gender of learners allowed for entry to Sixth Form.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="C">
              <xs:annotation>
                <xs:documentation>Coeducational</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="F">
              <xs:annotation>
                <xs:documentation>Female only</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="M">
              <xs:annotation>
                <xs:documentation>Male only</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="blank = HighestNCYear less than 12" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Boarders" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Indicates whether the school supports boarders or not.</xs:documentation>
        </xs:annotation>
        <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" minOccurs="0" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>The number of sessions in the usual school day (usually two).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Nursery" minOccurs="0" nillable="true">
        <xs:annotation>
          <xs:documentation>Indicates whether the school maintains a nursery class or not. Must be NO if Phase is set to MP, MS or SY. Must be YES if Phase is set to NY or EY.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Indicates whether the school has a special class/unit or not.  Must be Yes if Phase = SP.  Any details will be stored in the associated SchoolInfoDetail object.</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Operational condition of a school.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey25">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The GUID that identifies this school.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="LAInfoRefId" use="optional" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) assigned to the LA of which this school is a member.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolInfo" type="sif:SchoolInfoType">
    <xs:unique name="SchoolInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TermInfo-->

  <xs:complexType name="TermInfoType">
    <xs:annotation>
      <xs:documentation>
      This object provides information about a term; i.e., a reportable period of time.  Compare with US/Canada object: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:SchoolYear" minOccurs="0" />
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Starting date of the term.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Ending date of the term.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Text-based description of the term.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TermCode" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Locally-defined code. Use 'AUT', 'SPR', or 'SUM' for a 3 term year. Otherwise specify the term number within the year.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TermsPerYear" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:unsignedInt">
            <xs:annotation>
              <xs:documentation>The number of terms in a given year (3-6).</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>Does this TermInfo represent a marking period?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Does this TermInfo represent a scheduling term?</xs:documentation>
        </xs:annotation>
        <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:annotation>
          <xs:documentation>Does this TermInfo represent an attendance term?</xs:documentation>
        </xs:annotation>
        <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:unique name="SIF_ExtendedElementsKey26">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies this TermInfo entity.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that identifies the school where the term is used.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="TermInfo" type="sif:TermInfoType">
    <xs:unique name="TermInfoKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--WorkforcePersonal-->

  <xs:complexType name="WorkforcePersonalType">
    <xs:annotation>
      <xs:documentation>
      This object contains key personal information relating to a workforce member, who might be a teacher or other employee of the school or LA.  Compare with US/Canada objects: </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="sif:LocalId" minOccurs="0" />
      <xs:element name="AlertMsgList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="AlertMsg" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>This is an alert message that is associated with the person.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Type" use="required">
                      <xs:annotation>
                        <xs:documentation>This attribute specifies what type of alert message this is.</xs:documentation>
                      </xs:annotation>
                      <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" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>Medical alert associated with the person.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="Severity" use="required">
                      <xs:annotation>
                        <xs:documentation>The level of severity of this medical alert.</xs:documentation>
                      </xs:annotation>
                      <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" minOccurs="0" />
      <xs:element name="TeacherNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The DfES Teacher Reference number. For those who have one this is a unique number.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NINumber" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>National Insurance Number. Do not specify temporary numbers. Format:  AAnnnnnnA</xs:documentation>
            </xs:annotation>
            <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" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>An external identifier as described by the IdentifierType attribute.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:simpleContent>
                  <xs:extension base="xs:normalizedString">
                    <xs:attribute name="IdentifierType" use="required">
                      <xs:annotation>
                        <xs:documentation>A code that defines the type of identifier.</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:token">
                          <xs:enumeration value="PayrollNo">
                            <xs:annotation>
                              <xs:documentation>A Payroll number associated with the person.</xs:documentation>
                            </xs:annotation>
                          </xs:enumeration>
                          <xs:enumeration value="Other">
                            <xs:annotation>
                              <xs:documentation />
                            </xs:annotation>
                          </xs:enumeration>
                        </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" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="SIF_RefId" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:annotation>
                        <xs:documentation>
        The SIF RefId of a SchoolInfo or LAInfo object.
      </xs:documentation>
                      </xs:annotation>
                      <xs:simpleContent>
                        <xs:extension base="sif:IdRefTypeOrEmpty">
                          <xs:attribute name="SIF_RefObject" use="optional">
                            <xs:annotation>
                              <xs:documentation>
        The type of SIF object that the SIF_RefId attribute identifies.
      </xs:documentation>
                            </xs:annotation>
                            <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:annotation>
                      <xs:documentation>The DfES assigned number for the LA in which the workforce member is working, if associated.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EstablishmentId" minOccurs="0" nillable="true" type="sif:EstablishmentIdType">
                    <xs:annotation>
                      <xs:documentation>The DfES assigned number for the school or establishment in which the workforce member is working.  Note that the school may not necessarily be in the same LA listed as the LAId.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Posts" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Post" minOccurs="0" maxOccurs="unbounded" type="sif:UKAssignmentPostType">
                          <xs:annotation>
                            <xs:documentation>The post assigned to the workforce member in the context of the school or LA.</xs:documentation>
                          </xs:annotation>
                        </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:unique name="SIF_ExtendedElementsKey27">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the workforce member.  Note that the same GUID may be assigned to this person when they are also a learner (via LearnerPersonal) and/or a contact (via ContactPersonal).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="WorkforcePersonal" type="sif:WorkforcePersonalType">
    <xs:unique name="WorkforcePersonalKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerBehaviourIncident-->

  <xs:complexType name="LearnerBehaviourIncidentType">
    <xs:annotation>
      <xs:documentation>Object to represent a behaviour incident at an educational establishment</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SchoolInfoRefId" minOccurs="0" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the school that the event takes place.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="BehaviourType" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Weighting" minOccurs="0">
              <xs:simpleType>
                <xs:restriction base="xs:integer">
                  <xs:annotation>
                    <xs:documentation>An indicator of the positive / Negative nature and severity of behaviour</xs:documentation>
                  </xs:annotation>
                  <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" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Agreed Classification for this behaviour type</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>Free text string to precisely define the type of behaviour (if classification is Other then sub classification is mandatory else optional)</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Incident" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Date" minOccurs="0" type="xs:dateTime">
              <xs:annotation>
                <xs:documentation>Date and time Incident took place (started to take place)</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Duration" minOccurs="0" nillable="true" type="xs:integer">
              <xs:annotation>
                <xs:documentation>How long incident lasted (minutes)</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Location" minOccurs="0">
              <xs:annotation>
                <xs:documentation>The Location the Incident (mostly) took place</xs:documentation>
              </xs:annotation>
              <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:annotation>
                <xs:documentation>free text comments about the incident</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="PrecursorRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>A Preceding LearnerBehaviourIncidentRefID to which this behaviour is linked </xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Confidentiality" minOccurs="0">
              <xs:annotation>
                <xs:documentation>May indicate the type of persons that this should be displayed to</xs:documentation>
              </xs:annotation>
              <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" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Employees" minOccurs="0">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Employee" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="ParticipationTypes" minOccurs="0">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="ParticipationType" minOccurs="0" maxOccurs="unbounded">
                                <xs:annotation>
                                  <xs:documentation>The capacity of Involvement</xs:documentation>
                                </xs:annotation>
                                <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:annotation>
                            <xs:documentation>free text comments about the individuals Involvement In the incident</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:IdRefType">
                        <xs:annotation>
                          <xs:documentation>The REFID of the member of Staff </xs:documentation>
                        </xs:annotation>
                      </xs:attribute>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="Learners" minOccurs="0">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Learner" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="ParticipationTypes" minOccurs="0">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="ParticipationType" minOccurs="0" maxOccurs="unbounded">
                                <xs:annotation>
                                  <xs:documentation>The capacity of Involvement</xs:documentation>
                                </xs:annotation>
                                <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:annotation>
                            <xs:documentation>free text comments about the individuals Involvement In the incident</xs:documentation>
                          </xs:annotation>
                        </xs:element>
                        <xs:element name="Motivation" minOccurs="0" nillable="true">
                          <xs:annotation>
                            <xs:documentation>Any recorded Motivation for participation</xs:documentation>
                          </xs:annotation>
                          <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:annotation>
                                <xs:documentation>How many Points awarded for the participation (indicator of the positive / Negative nature and severity of individuals behaviour)</xs:documentation>
                              </xs:annotation>
                              <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" minOccurs="0" maxOccurs="unbounded">
                                <xs:complexType>
                                  <xs:sequence>
                                    <xs:element name="Classification" minOccurs="0">
                                      <xs:annotation>
                                        <xs:documentation>The classification Of Outcome</xs:documentation>
                                      </xs:annotation>
                                      <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:annotation>
                                        <xs:documentation>Free text string to precisely define the action (if classification is Other then sub classification is mandatory else optional)</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                    <xs:element name="Date" minOccurs="0" type="xs:dateTime">
                                      <xs:annotation>
                                        <xs:documentation>Date and time Action has or Will take place</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                    <xs:element name="Person" minOccurs="0" nillable="true" type="sif:IdRefType">
                                      <xs:annotation>
                                        <xs:documentation>The PersonRefId of the person (student/ Employee/ parent) who will carry out the action</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                    <xs:element name="Comment" minOccurs="0" nillable="true" type="xs:normalizedString">
                                      <xs:annotation>
                                        <xs:documentation>free text comments about the Action</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                  </xs:sequence>
                                </xs:complexType>
                              </xs:element>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="LearnerPersonalRefId" use="required" type="sif:IdRefType">
                        <xs:annotation>
                          <xs:documentation>The REFID of the learner</xs:documentation>
                        </xs:annotation>
                      </xs:attribute>
                    </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:unique name="SIF_ExtendedElementsKey28">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a particular incident</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerBehaviourIncident" type="sif:LearnerBehaviourIncidentType">
    <xs:unique name="LearnerBehaviourIncidentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--Scope-->

  <xs:complexType name="ScopeType">
    <xs:annotation>
      <xs:documentation>
      Scope of this timetable, ie: a general description of what dates the timetable covers, etc
    </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="TTScopeName" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A short label for reference in screen displays.</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="50" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SupplierName" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>The supplier of the software that created this message</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>A URL to a page on the supplier’s website that gives information about the transfer and/or contact details for the supplier.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Product" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>The product that created this message</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Version" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>The version of that Product</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="20" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="SchoolInfoRefId" minOccurs="0" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The unique school ID, taken from the existing SchoolInfo object (requested from ZIS)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolName" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>The school name in plain text – to help a person to see immediately this is the correct school</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>Date schedule was created or last edited (omitted for "Basic data only" message)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ScheduleName" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Name given to schedule by timetabler. The TT-Software may contain more than one schedule, so this tells us which one is being sent.</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="20" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element ref="sif:SchoolYear" minOccurs="0" />
      <xs:element name="StartDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>First day of the timetable</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Last day of the timetable</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Status" minOccurs="0">
        <xs:annotation>
          <xs:documentation>
        The "Status" of the timetable transfer 'BT' and 'ET' are sent by TTSoftware when sending a timetable. The others are sent by the MIS after receiving a timetable. (See also "Reasons for Status" below).</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="BT">
              <xs:annotation>
                <xs:documentation>Beginning of transfer.</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="ET">
              <xs:annotation>
                <xs:documentation>End of transfer.</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="RP">
              <xs:annotation>
                <xs:documentation>Received but import pending.</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="SI">
              <xs:annotation>
                <xs:documentation>Successful import.</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="UI">
              <xs:annotation>
                <xs:documentation>Unsuccessful import.</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:annotation>
          <xs:documentation>The supplier's phone number(s).</xs:documentation>
        </xs:annotation>
        <xs:unique name="PhoneNumberListKey5">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </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:unique name="SIF_ExtendedElementsKey29">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>
      Unique GUID for this Timetable transfer
    </xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Scope" type="sif:ScopeType">
    <xs:unique name="ScopeKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TTTeacher-->

  <xs:complexType name="TTTeacherType">
    <xs:annotation>
      <xs:documentation>A teacher (or teaching post) used on the timetable. This may or may not be a "real" teacher stored in the MIS yet.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Code" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Unique Code local to TT-Software (could be Teacher Initials, Staff Code, etc)</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>If this teacher is known to the MIS, this is the "WorkforcePersonalId"</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>This is the description of the teacher (or "post", etc). It may be a name "John Smith" or it may just be a description such as "New Maths Teacher". If WorkforcePersonalId is not supplied, this Description is used by the MIS to help theuser manually match to a teacher in the MIS (or decide on some other appropriate action).</xs:documentation>
            </xs:annotation>
            <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:unique name="SIF_ExtendedElementsKey30">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>Unique GUID for this Timetable Teacher</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="TTTeacher" type="sif:TTTeacherType">
    <xs:unique name="TTTeacherKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TTSubject-->

  <xs:complexType name="TTSubjectType">
    <xs:annotation>
      <xs:documentation>A subject used on the timetable. This may or may not be a subject stored in the MIS yet.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Code" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Unique Code local to TT-Software (could be Teacher Initials, Staff Code, etc)</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="6" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>This is the description of the subject (long name). The recommended maximum length of the string is 32 characters. </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:unique name="SIF_ExtendedElementsKey31">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTSubject" type="sif:TTSubjectType">
    <xs:unique name="TTSubjectKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TTRoom-->

  <xs:complexType name="TTRoomType">
    <xs:annotation>
      <xs:documentation>A room (or learning space) used on the timetable. This may or may not be a "real" room stored in the MIS yet.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Code" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Unique Code local to TT-Software (short name)</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>This is the description of the room (long name) It is used by the MIS to help the user manually match to a room in the MIS (or decide on some other appropriate action). The recommended maximum length of the string is 32 characters.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SiteRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>Which "site" this room is on. It may also be used by the MIS.  References the TTSite object.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey32">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="TTRoom" type="sif:TTRoomType">
    <xs:unique name="TTRoomKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TTSite-->

  <xs:complexType name="TTSiteType">
    <xs:annotation>
      <xs:documentation>A site used on the timetable. This may or may not be a “real” site stored in the MIS yet.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Code" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Unique Code local to TT-Software</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>This is the description of the site. It is used by the MIS to help the user manually match to a site in the MIS (or decide on some other appropriate action).</xs:documentation>
            </xs:annotation>
            <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:annotation>
          <xs:documentation>What "type" of site this is. It is used by the MIS to help with any manual matching.</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="S">
              <xs:annotation>
                <xs:documentation>a site on your school</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="V">
              <xs:annotation>
                <xs:documentation>virtual (ie: not a physical site)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="E">
              <xs:annotation>
                <xs:documentation>an external site (eg: another school in a federation, or a local business)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </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:unique name="SIF_ExtendedElementsKey33">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>Unique GUID for this Site</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="TTSite" type="sif:TTSiteType">
    <xs:unique name="TTSiteKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--Cycle-->

  <xs:complexType name="CycleType">
    <xs:annotation>
      <xs:documentation>The timetable cycle</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="CycleName" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A label for this cycle</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="CycleDays" minOccurs="0" type="xs:integer">
        <xs:annotation>
          <xs:documentation>Number of days in cycle</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PeriodsPerDay" minOccurs="0" type="xs:integer">
        <xs:annotation>
          <xs:documentation>(Max) Number of periods per day (see Rectangular Grid Representation above)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StandardPeriodList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="sif:Period" minOccurs="0" maxOccurs="unbounded" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="TTDayList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="TTDay" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TTDayId" minOccurs="0">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>A unique local ID for this day</xs:documentation>
                        </xs:annotation>
                        <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="ShortName" minOccurs="0">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>A short day label</xs:documentation>
                        </xs:annotation>
                        <xs:maxLength value="15" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="LongName" minOccurs="0">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>A long day label</xs:documentation>
                        </xs:annotation>
                        <xs:maxLength value="25" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="DayIndex" minOccurs="0" type="xs:integer">
                    <xs:annotation>
                      <xs:documentation>The day’s position in the cycle (1,2,3,etc).</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="PeriodList" minOccurs="0" nillable="true">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element ref="sif:Period" minOccurs="0" 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:unique name="SIF_ExtendedElementsKey34">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>Unique GUID for this cycle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="optional" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The RefId of the SchoolInfo to which this Cycle belongs.  This is optional to preserve backwards compatibility but it is very strongly advised that it should be correctly populated and considered mandatory in this version of the specification.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Cycle" type="sif:CycleType">
    <xs:unique name="CycleKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--TeachingGroup-->

  <xs:complexType name="TeachingGroupType">
    <xs:annotation>
      <xs:documentation>A Teaching Group</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SchoolGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The RefId of the SchoolGroup (typically in the MIS) that represents this TeachingGroup. (This will typically be known if the information is coming from an MIS; but typically not known if the information is coming from timetabling software.)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GroupDefinition" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ShortName" minOccurs="0">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:annotation>
                    <xs:documentation>A short free-format label that describes the group. Used for display purposes in the MIS or TT-Software.</xs:documentation>
                  </xs:annotation>
                  <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="LongName" minOccurs="0">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:annotation>
                    <xs:documentation>A longer label to help office staff understand the meaning of the group</xs:documentation>
                  </xs:annotation>
                  <xs:maxLength value="80" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
                </xs:restriction>
              </xs:simpleType>
            </xs:element>
            <xs:element name="TTSubjectRefId" minOccurs="0" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>Subject being taught - see TTSubject NB: We do not allow a TG to have no subject</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="Set" minOccurs="0" nillable="true">
              <xs:simpleType>
                <xs:restriction base="xs:normalizedString">
                  <xs:annotation>
                    <xs:documentation>Set number (typically 1,2,3,etc or A,B,C, etc but could be a longer label). Can be useful when office staff are trying to "recognise" a TG</xs:documentation>
                  </xs:annotation>
                  <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:annotation>
                    <xs:documentation>Block number or letter (eg: "A") Can be useful when office staff are trying to "recognise" a TG</xs:documentation>
                  </xs:annotation>
                  <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:annotation>
                <xs:documentation>Level / Assessment Stage, eg "KS3" (if known / relevant)</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="MainTeacherRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The main teacher / supervisor / etc for this group (for reporting / recognition purposes) (see TTTeacher)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="GroupTeacherList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="GroupTeacher" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TTTeacherRefId" minOccurs="0" type="sif:IdRefType">
                    <xs:annotation>
                      <xs:documentation>The teacher (see TTTeacher)</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Type" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>The teacher’s relationship with the TG</xs:documentation>
                    </xs:annotation>
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="A">
                          <xs:annotation>
                            <xs:documentation>Assistant</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="H">
                          <xs:annotation>
                            <xs:documentation>Head-of-Dept/Subject-Leader</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="Z">
                          <xs:annotation>
                            <xs:documentation>other/unspecified</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                      </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:unique name="SIF_ExtendedElementsKey35">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>Unique local ID</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="TeachingGroup" type="sif:TeachingGroupType">
    <xs:unique name="TeachingGroupKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--Junction-->

  <xs:complexType name="JunctionType">
    <xs:annotation>
      <xs:documentation>A representation of the Curriculum Diagram.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Label" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A free-format label that describes the junction. Used for display purposes in the MIS and/or TT-Software.</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="40" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ShortLabel" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A shorter version of Label, for display purposes.</xs:documentation>
            </xs:annotation>
            <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:annotation>
              <xs:documentation>An optional way for the TT-Software to provide information about the "type" of junction (eg: "band" or "block")</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="30" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="InputList" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Input" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>Conditional and has only one value: "SC".   "SC" has special meaning – it means this is the top of the "tree" and the input is the whole school.</xs:documentation>
                    </xs:annotation>
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="SC">
                          <xs:annotation>
                            <xs:documentation>School</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="GroupLocalId" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>If Type != "SC", this is the LocalId of another junction output</xs:documentation>
                        </xs:annotation>
                        <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" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Output" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Type" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>"TG" has special meaning – it means this is the bottom of the "tree" and the output is a TeachingGroup. "YR" means a year (or "principal division") within the school (7,8,9,etc).</xs:documentation>
                    </xs:annotation>
                    <xs:simpleType>
                      <xs:restriction base="xs:token">
                        <xs:enumeration value="TG">
                          <xs:annotation>
                            <xs:documentation>TeachingGroup</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="YR">
                          <xs:annotation>
                            <xs:documentation>Year</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="GR">
                          <xs:annotation>
                            <xs:documentation>Other Groups</xs:documentation>
                          </xs:annotation>
                        </xs:enumeration>
                      </xs:restriction>
                    </xs:simpleType>
                  </xs:element>
                  <xs:element name="LocalType" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>An optional way for the TT-Software to provide information about the "type" of junction (eg: "band" or "block").</xs:documentation>
                        </xs:annotation>
                        <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:annotation>
                          <xs:documentation>Unique LocalID of this junction output</xs:documentation>
                        </xs:annotation>
                        <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:annotation>
                      <xs:documentation>If Type = "TG" then include here the TeachingGroupID (see TeachingGroup)</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Desc" minOccurs="0" nillable="true">
                    <xs:simpleType>
                      <xs:restriction base="xs:normalizedString">
                        <xs:annotation>
                          <xs:documentation>Description. Required if Type is not "TG". Optional if Type is “TG” (since a TG has its own ShortName and LongName already)</xs:documentation>
                        </xs:annotation>
                        <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:annotation>
                          <xs:documentation>A shorter version of Desc, for display purposes</xs:documentation>
                        </xs:annotation>
                        <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" minOccurs="0" maxOccurs="unbounded" type="sif:NCYearGroupType">
                          <xs:annotation>
                            <xs:documentation>NC Year Group</xs:documentation>
                          </xs:annotation>
                        </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:unique name="SIF_ExtendedElementsKey36">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>A unique local identifier for this junction</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Junction" type="sif:JunctionType">
    <xs:unique name="JunctionKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--NonTeachingActivity-->

  <xs:complexType name="NonTeachingActivityType">
    <xs:annotation>
      <xs:documentation>
      A "non-teaching activity" is used to represent times when a teacher is not teaching a Teaching Group but is nonetheless "busy". Examples are meetings, part-time teachers who are not in school, PPA time, etc.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="NTCode" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A unique code for the non-teaching activity</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="12" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Description" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>A description of the non-teaching activity</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="25" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Type" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Lesson/meeting type Note this Type over-rides the period type in the cycle definition (in case, for eg, Period 1 is Registration for some classes but not others)</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="R">
              <xs:annotation>
                <xs:documentation>registration</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="B">
              <xs:annotation>
                <xs:documentation>break</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="L">
              <xs:annotation>
                <xs:documentation>lunch</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="O">
              <xs:annotation>
                <xs:documentation>outside school hours (eg: clubs)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="U">
              <xs:annotation>
                <xs:documentation>teacher unavailable (but in school)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="X">
              <xs:annotation>
                <xs:documentation>teacher unavailable (out of school)</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="N">
              <xs:annotation>
                <xs:documentation>other (or unspecified) non-teaching</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </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:unique name="SIF_ExtendedElementsKey37">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>A unique local identifier for this junction</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="NonTeachingActivity" type="sif:NonTeachingActivityType">
    <xs:unique name="NonTeachingActivityKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--Lesson-->

  <xs:complexType name="LessonType">
    <xs:annotation>
      <xs:documentation>A lesson on the timetable</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="TTDayId" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:normalizedString">
            <xs:annotation>
              <xs:documentation>Day this lesson is scheduled</xs:documentation>
            </xs:annotation>
            <xs:maxLength value="5" xmlns:xs="http://www.w3.org/2001/XMLSchema" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="PeriodIndex" minOccurs="0" type="xs:integer">
        <xs:annotation>
          <xs:documentation>Index of period this lesson/meeting starts</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Type" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Lesson/meeting type The value here determines whether a TeachingGroupID or an NTCode is required</xs:documentation>
        </xs:annotation>
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="T">
              <xs:annotation>
                <xs:documentation>teaching</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="N">
              <xs:annotation>
                <xs:documentation>non-teaching</xs:documentation>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Length" minOccurs="0" nillable="true" type="xs:integer">
        <xs:annotation>
          <xs:documentation>Length of lesson in periods (1=single, 2=double, etc). Can omit if just a single.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TeachingGroupRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The Teaching Group being taught (may not be one if Type != "T") (see TeachingGroup)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NTCodeRef" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>If there is no TeachingGroupRefID (see NTCode)</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TeacherList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="TTTeacherRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>The teacher(s) teaching / supervising this lesson (see TTTeacher)</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="TTRoomRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The room (or location) where this lesson is taking place (see TTRoom)</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey38">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
    <xs:attribute name="CycleRefId" use="optional" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The RefId of the Cycle to which this Lesson belongs.  This is optional to preserve backwards compatibility but it is very strongly advised that it should be correctly populated and considered mandatory in this version of the specification.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="Lesson" type="sif:LessonType">
    <xs:unique name="LessonKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--LearnerEntitlement-->

  <xs:complexType name="LearnerEntitlementType">
    <xs:sequence>
      <xs:element name="LearnerPersonalRefId" minOccurs="0" type="sif:RefIdType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the learner to whom this entitlement is linked.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolInfoRefId" minOccurs="0" type="sif:RefIdType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the school to which this entitlement applies.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EntitlementType" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The type of this Entitlement</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date Specific Entitlement starts.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date Specific Entitlement Ends has to be on or after Start date.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A note relating to entitlement period.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Value" minOccurs="0" nillable="true" />
      <xs:element name="ProviderId" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>The LA or Provider identifier of awarding  organisation if relevant.</xs:documentation>
          </xs:annotation>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefTypeOrEmpty">
              <xs:attribute name="ProviderType" use="required" type="xs:normalizedString">
                <xs:annotation>
                  <xs:documentation>LA or Provider type</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="NextReviewDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Advises the date for next review of the listed entitlement, this element is not expected to be provided for instances where the EndDate is in the past as it refers to the entitlement, not periods of entitlement. Note that a review date could be prior to the end date of a current entitlement, and so is recorded separately.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey39">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a particular entitlement.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="LearnerEntitlement" type="sif:LearnerEntitlementType">
    <xs:unique name="LearnerEntitlementKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--PersonDietaryPreference-->

  <xs:complexType name="PersonDietaryPreferenceType">
    <xs:sequence>
      <xs:element name="PersonRefId" minOccurs="0" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) of the person to whom the Dietary preference is linked.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WeeklyMealPatternList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="WeeklyMealPattern" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="StartDate" minOccurs="0" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>Date Specific pattern starts</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="EndDate" minOccurs="0" type="xs:date">
                    <xs:annotation>
                      <xs:documentation>Date Specific pattern Ends.</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>A note relating to pattern</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Meals" minOccurs="0">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Meal" minOccurs="0" maxOccurs="unbounded">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="Day" minOccurs="0">
                                <xs:annotation>
                                  <xs:documentation>The Day of week that Meal is required</xs:documentation>
                                </xs:annotation>
                                <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" minOccurs="0">
                                <xs:annotation>
                                  <xs:documentation>Which meal of the day is required</xs:documentation>
                                </xs:annotation>
                                <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" minOccurs="0">
                                <xs:annotation>
                                  <xs:documentation>What type of meal is required</xs:documentation>
                                </xs:annotation>
                                <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" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="PreferenceType" minOccurs="0">
                    <xs:annotation>
                      <xs:documentation>The Type of preference</xs:documentation>
                    </xs:annotation>
                    <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" minOccurs="0" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>The component of meal</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Note" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>A note relating to dietary preference</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="MealEffect" minOccurs="0" nillable="true">
                    <xs:annotation>
                      <xs:documentation>Should the Meal component be Included or Excluded from the meal.  Default is Exclude</xs:documentation>
                    </xs:annotation>
                    <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:unique name="SIF_ExtendedElementsKey40">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType" />
  </xs:complexType>

  <xs:element name="PersonDietaryPreference" type="sif:PersonDietaryPreferenceType">
    <xs:unique name="PersonDietaryPreferenceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--WorkforceAbsence-->

  <xs:complexType name="WorkforceAbsenceType">
    <xs:annotation>
      <xs:documentation>Details the absence of a Workforce person for a duration and reason.  If the reason is sickness then additional detail can be provided in line with typical HR requirements.  If the absence only relates to a specific assignment, e.g. an individual who is a kitchen assistant and midday supervisor takes the morning off only then this association can be made.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="AbsenceStartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date this absence started.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceStartTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>Time on AbsenceStartDate that this absence started, assumed midnight if not included.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceEndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date this absence ended, if omitted it is assumed that the absence is ongoing.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceEndTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>Time on AbsenceEndDate that this absence ended, assumed midnight if not included.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceType" minOccurs="0" type="sif:UKAbsenceReasonType">
        <xs:annotation>
          <xs:documentation>Type of absence.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceIllness" minOccurs="0" nillable="true" type="sif:UKIllnessCategoryType">
        <xs:annotation>
          <xs:documentation>Specific illness if AbsenceType is Sickness.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="WorkforceAssignmentRefId" minOccurs="0" nillable="true" type="sif:RefIdType">
        <xs:annotation>
          <xs:documentation>For use if this absence relates to a specific WorkforceAssignment.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey41">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the WorkforceAbsence object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>RefId of WorkforcePersonal object this applies to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="WorkforceAbsence" type="sif:WorkforceAbsenceType">
    <xs:unique name="WorkforceAbsenceKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--WorkforceContract-->

  <xs:complexType name="WorkforceContractType">
    <xs:annotation>
      <xs:documentation> Extends the details specified in a WorkforceAssignment to include details of contracts governing WorkforceAssignments.  This is a stub only at the moment and may be expanded in the future to contain additional contract details such as renumeration.  Based around the US SIF 2.4 EmployeeContract object.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ContractStartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date this contract becomes effective.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContractEndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date this contract ceases effect.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContractAssignmentCode" minOccurs="0" type="xs:string">
        <xs:annotation>
          <xs:documentation>Reference identifying this contract and assignment.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContractHoursPerWeek" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:annotation>
              <xs:documentation>Employed hours per week on this contract.</xs:documentation>
            </xs:annotation>
            <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:annotation>
              <xs:documentation>Employed weeks per year on this contract.</xs:documentation>
            </xs:annotation>
            <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:annotation>
              <xs:documentation>Full-time job equivalent ratio for this assignment. (Format is x.xx; an employee who is full-time and who spends 50% of their time on this assignment would be represented as 0.50).</xs:documentation>
            </xs:annotation>
            <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:unique name="SIF_ExtendedElementsKey42">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the WorkforceContract object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="WorkforceAssignmentRefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>RefId of WorkforceAssignment object this applies to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="WorkforceContract" type="sif:WorkforceContractType">
    <xs:unique name="WorkforceContractKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--WorkforceAssignment-->

  <xs:complexType name="WorkforceAssignmentType">
    <xs:annotation>
      <xs:documentation> A more detailed, temporal and referenced view of the posts a person holds compared to the WorkforcePersonal CurrentAssignmentList element.  Based around the US SIF 2.4 EmployeeAssignment object.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SIF_RefId" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>
        The SIF RefId of a SchoolInfo or LAInfo object.
      </xs:documentation>
          </xs:annotation>
          <xs:simpleContent>
            <xs:extension base="sif:IdRefTypeOrEmpty">
              <xs:attribute name="SIF_RefObject" use="optional">
                <xs:annotation>
                  <xs:documentation>
        The type of SIF object that the SIF_RefId attribute identifies.
      </xs:documentation>
                </xs:annotation>
                <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" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date this assignment commenced.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AssignmentEndDate" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>The date this assignment ends.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Post" minOccurs="0" type="sif:UKAssignmentPostType">
        <xs:annotation>
          <xs:documentation>The post held under this particular assignment</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey43">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the WorkforceAssignment object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="WorkforcePersonalRefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>RefId of WorkforcePersonal object this applies to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="WorkforceAssignment" type="sif:WorkforceAssignmentType">
    <xs:unique name="WorkforceAssignmentKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </xs:element>


  <!--SchoolDiaryEntry-->

  <xs:complexType name="SchoolDiaryEntryType">
    <xs:annotation>
      <xs:documentation>
		Container for school diary events such as open evenings, sports days, etc.  Not for description of term start and end dates (see TermInfo) or timetabled events such as lessons (see TT*, Cycle, Lesson objects).
    </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="StartDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date the specific SchoolDiaryEntry starts.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StartTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>Specific time that SchoolDiaryEntry starts.  If omitted then assumed to be an all day event.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndDate" minOccurs="0" type="xs:date">
        <xs:annotation>
          <xs:documentation>Date the specific DiaryEntry ends.  If a single day event then it is same value as StartDate</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EndTime" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:documentation>Specific time that the SchoolDiaryEntry ends.  If omitted then the SchoolDiaryEntry is assumed to be an all day event.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Title" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The name of the event.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>A description relating to the event.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Category" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The user-defined, free text category of the diary entry. For example Open Evenings, Parent Evenings or Sports Events.</xs:documentation>
        </xs:annotation>
      </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:unique name="SIF_ExtendedElementsKey44">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:unique>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) that uniquely identifies a particular SchoolDiaryEntry. </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>The ID (GUID) of the school to which this SchoolDiaryEntry applies.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolDiaryEntry" type="sif:SchoolDiaryEntryType">
    <xs:unique name="SchoolDiaryEntryKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:unique>
  </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:annotation>
          <xs:documentation>Unknown (This should NEVER be used if possible)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>XML Validation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Encryption</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Authentication</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Access and Permissions</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Registration</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Provision</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Subscription</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>Request and Response</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>Event Reporting and Processing</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>Transport</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>System (OS, Database, Vendor localized, etc.)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>Generic Message Handling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="13">
        <xs:annotation>
          <xs:documentation>SMB Handling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="14">
        <xs:annotation>
          <xs:documentation>SIF Zone Service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureXMLValidationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Message is not well-formed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Generic validation error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Invalid value for element/attribute</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Missing mandatory element/attribute</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureEncryptionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureAuthenticationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Generic authentication error (with signature)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Missing sender's certificate</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Invalid certificate</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Sender's certificate is not trusted</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Expired certificate</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Invalid signature</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>Invalid encryption algorithm (only accepts MD4)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>Missing public key of the receiver (when decrypting message)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>Missing receiver's private key (when decrypting message)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureAccessAndPermissionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>No permission to register</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>No permission to provide this object</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>No permission to subscribe to this SIF_Event</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>No permission to request this object</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>No permission to respond to this object request</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>No permission to publish SIF_Event</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>No permission to administer policies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>SIF_SourceId is not registered</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>No permission to publish SIF_Event Add</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>No permission to publish SIF_Event Change</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>No permission to publish SIF_Event Delete</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="13">
        <xs:annotation>
          <xs:documentation>No permission to publish indicated SIF_Notification</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="14">
        <xs:annotation>
          <xs:documentation>No permission to invoke SIF_ServiceInput to this Service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="15">
        <xs:annotation>
          <xs:documentation>No permission to provide this Service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureRegistrationErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>The SIF_SourceId is invalid</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Requested transport protocol is unsupported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Requested SIF_Version(s) not supported.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Requested SIF_MaxBufferSize is too small</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>ZIS requires a secure transport</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>Agent is registered for push mode (returned when a push-mode agent sends a SIF_GetMessage).</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>ZIS does not support the requested Accept-Encoding value.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureProvisionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Invalid object</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Object already has a provider (SIF_Provide message)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSubscriptionErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Invalid object</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureRequestAndResponseErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Invalid object</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>No provider</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Responder does not support requested SIF_Version</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>Responder does not support requested SIF_MaxBufferSize</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>Unsupported query in request</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>Invalid SIF_RequestMsgId specified in SIF_Response</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>SIF_Response is larger than requested SIF_MaxBufferSize</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>SIF_PacketNumber is invalid in SIF_Response</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="13">
        <xs:annotation>
          <xs:documentation>SIF_Response does not match any SIF_Version from SIF_Request</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="14">
        <xs:annotation>
          <xs:documentation>SIF_DestinationId does not match SIF_SourceId from SIF_Request</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="15">
        <xs:annotation>
          <xs:documentation>No support for SIF_ExtendedQuery</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="16">
        <xs:annotation>
          <xs:documentation>SIF_RequestMsgId deleted from cache due to timeout</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="17">
        <xs:annotation>
          <xs:documentation>SIF_RequestMsgId deleted from cache by administrator</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="18">
        <xs:annotation>
          <xs:documentation>SIF_Request cancelled by requesting agent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="19">
        <xs:annotation>
          <xs:documentation>SIF_Request cancelled due to a SIF XML filter rule</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureEventReportingAndProcessingErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Invalid event</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureTransportErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Requested protocol is not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Secure channel requested and no secure path exists</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Unable to establish connection</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSystemErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureGenericMessageHandlingErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Message not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Version not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Context not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Protocol error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>No such message (as identified by SIF_OriginalMsgId)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Multiple contexts not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSMBErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>SMB can only be invoked during a SIF_Event acknowledgement</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Final SIF_Ack expected from Push-Mode Agent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Incorrect SIF_MsgId in final SIF_Ack</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="InfrastructureSIFZoneServiceErrorType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Generic error</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Invalid service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>No provider for service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Responder does not support requested SIF_Version</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Responder does not support requested SIF_MaxBufferSize</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Operation not supported</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Argument not valid</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>Invalid SIF_ServiceMsgId specified in SIF_ServiceOutput</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>SIF_ServiceOutput is larger than requested SIF_MaxBufferSize</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>SIF_PacketNumber is invalid</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>SIF_ServiceOutput does not match any SIF_Version from SIF_ServiceInput</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>SIF_DestinationId does not match SIF_SourceId from SIF_ServiceInput</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="13">
        <xs:annotation>
          <xs:documentation>SIF_ServiceMsgId deleted from cache due to timeout</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="14">
        <xs:annotation>
          <xs:documentation>SIF_ServiceMsgId deleted from cache by administrator</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="15">
        <xs:annotation>
          <xs:documentation>SIF_ServiceInput cancelled by requesting agent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="16">
        <xs:annotation>
          <xs:documentation>ACL permission denied</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="17">
        <xs:annotation>
          <xs:documentation>Not a provider for this service</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="18">
        <xs:annotation>
          <xs:documentation>Service or Operation failed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntrySuccessCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Success</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryDataIssuesWithSuccessResultType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Data was changed to complete request successfully</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Data was added to complete request successfully</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryDataIssuesWithFailureResultType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Insufficient information in message</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Cannot process change due to business rule</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Related information unavailable</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryAgentErrorConditionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>An exception has occurred in the agent (generic error)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SIF_LogEntryZISErrorConditionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>An exception has occurred in the ZIS (generic error)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Message could not be delivered due to buffer size limitations</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Message could not be delivered due to minimum security requirements</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Message could not be delivered due to destination agent not supporting SIF_Version</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Message could not be delivered due to SIF_Response validation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKUsualModeOfTravelType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="WLK">
        <xs:annotation>
          <xs:documentation>Walk</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYC">
        <xs:annotation>
          <xs:documentation>Cycle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAR">
        <xs:annotation>
          <xs:documentation>Car/Van</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CRS">
        <xs:annotation>
          <xs:documentation>Car Share (with a child/children from a different household)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSB">
        <xs:annotation>
          <xs:documentation>Public service bus</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DSB">
        <xs:annotation>
          <xs:documentation>Dedicated school bus</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BNK">
        <xs:annotation>
          <xs:documentation>Bus (type not known)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TXI">
        <xs:annotation>
          <xs:documentation>Taxi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRN">
        <xs:annotation>
          <xs:documentation>Train</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUL">
        <xs:annotation>
          <xs:documentation>London Underground</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MTL">
        <xs:annotation>
          <xs:documentation>Metro/Tram/Light Rail</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentMethodType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DD">
        <xs:annotation>
          <xs:documentation>Disapplied</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NA">
        <xs:annotation>
          <xs:documentation>Not assessed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TA">
        <xs:annotation>
          <xs:documentation>Teacher Assessment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TT">
        <xs:annotation>
          <xs:documentation>Task / Test</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentResultQualifierType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="EG">
        <xs:annotation>
          <xs:documentation>Examination/Post-14 Qualification Grade</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EL">
        <xs:annotation>
          <xs:documentation>EAL Assessment Level (Pre NC Level 2)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FC">
        <xs:annotation>
          <xs:documentation>Foundation Stage Profile Count</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FD">
        <xs:annotation>
          <xs:documentation>Foundation Stage Profile Detail</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FS">
        <xs:annotation>
          <xs:documentation>Foundation Stage Profile Score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IA">
        <xs:annotation>
          <xs:documentation>International Baccalaureate Assessment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IG">
        <xs:annotation>
          <xs:documentation>International Baccalaureate Grade Point</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IR">
        <xs:annotation>
          <xs:documentation>International Baccalaureate Final Result</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IS">
        <xs:annotation>
          <xs:documentation>International Baccalaureate Aggregate Grade Points</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NA">
        <xs:annotation>
          <xs:documentation>National Curriculum Age Standardised Score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ND">
        <xs:annotation>
          <xs:documentation>National Curriculum Level (Decimalised)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NF">
        <xs:annotation>
          <xs:documentation>National Curriculum Level with Fine Grading</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NL">
        <xs:annotation>
          <xs:documentation>National Curriculum Level</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NM">
        <xs:annotation>
          <xs:documentation>National Curriculum Task/Test Mark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NP">
        <xs:annotation>
          <xs:documentation>SEN Assessment Level (P Scale)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NR">
        <xs:annotation>
          <xs:documentation>National Curriculum Test Raw Score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NS">
        <xs:annotation>
          <xs:documentation>National Curriculum Summary (Aggregate) Mark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AG">
        <xs:annotation>
          <xs:documentation>Age score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SA">
        <xs:annotation>
          <xs:documentation>Standard age score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LG">
        <xs:annotation>
          <xs:documentation>Letter grade / mark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ML">
        <xs:annotation>
          <xs:documentation>Mastery level</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NC">
        <xs:annotation>
          <xs:documentation>Normal curve equivalent score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NM">
        <xs:annotation>
          <xs:documentation>Number score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NS">
        <xs:annotation>
          <xs:documentation>Normalised standard score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PF">
        <xs:annotation>
          <xs:documentation>Pass/fail</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PC">
        <xs:annotation>
          <xs:documentation>Percentile</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PR">
        <xs:annotation>
          <xs:documentation>Percentile rank</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RA">
        <xs:annotation>
          <xs:documentation>Ranking</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RS">
        <xs:annotation>
          <xs:documentation>Raw score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SC">
        <xs:annotation>
          <xs:documentation>Scale score</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CM">
        <xs:annotation>
          <xs:documentation>Comment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentResultStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="E">
        <xs:annotation>
          <xs:documentation>Estimate</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="I">
        <xs:annotation>
          <xs:documentation>Interim</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>Provisional (subject to regarding/appeal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="R">
        <xs:annotation>
          <xs:documentation>Result</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="T">
        <xs:annotation>
          <xs:documentation>Target</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentStageType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="FSP">
        <xs:annotation>
          <xs:documentation>Foundation Stage Profile (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS0">
        <xs:annotation>
          <xs:documentation>Baseline Assessment (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS1">
        <xs:annotation>
          <xs:documentation>Key Stage 1 (End of) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="K1T">
        <xs:annotation>
          <xs:documentation>Key Stage 1 Trial (Historical) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="K2P">
        <xs:annotation>
          <xs:documentation>Key Stage 2 Progression Tests (Pilot) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="K3P">
        <xs:annotation>
          <xs:documentation>Key Stage 3 Progression Tests (Pilot) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS2">
        <xs:annotation>
          <xs:documentation>Key Stage 2 (End of) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS3">
        <xs:annotation>
          <xs:documentation>Key Stage 3 (End of) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS4">
        <xs:annotation>
          <xs:documentation>GCSE / GNVQ / Other Approved Awards (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KS5">
        <xs:annotation>
          <xs:documentation>A Level/AS Level/Advanced GNVQ/Other Advanced Studies (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y03">
        <xs:annotation>
          <xs:documentation>Year 3 Optional Tests / Teacher Assessments (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y04">
        <xs:annotation>
          <xs:documentation>Year 4 Optional Tests / Teacher Assessments (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y4X">
        <xs:annotation>
          <xs:documentation>Year 4 Optional Tests (1997 Based) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y05">
        <xs:annotation>
          <xs:documentation>Year 5 Optional Tests / Teacher Assessments (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y07">
        <xs:annotation>
          <xs:documentation>Year 7 Optional Tests / Teacher Assessments (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y7P">
        <xs:annotation>
          <xs:documentation>Year 7 Progress Tests (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y08">
        <xs:annotation>
          <xs:documentation>Year 8 Optional Tests / Teacher Assessments (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EAL">
        <xs:annotation>
          <xs:documentation>English as an Additional Language Level of Acquisition (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEN">
        <xs:annotation>
          <xs:documentation>P-Scale Assessment for SEN children (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W09">
        <xs:annotation>
          <xs:documentation>World Class Tests – Aged 9 (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W13">
        <xs:annotation>
          <xs:documentation>World Class Tests – Aged 13 (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P2">
        <xs:annotation>
          <xs:documentation>Primary 2 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P3">
        <xs:annotation>
          <xs:documentation>Primary 3 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P4">
        <xs:annotation>
          <xs:documentation>Primary 4 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P5">
        <xs:annotation>
          <xs:documentation>Primary 5 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P6">
        <xs:annotation>
          <xs:documentation>Primary 6 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P7">
        <xs:annotation>
          <xs:documentation>Primary 7 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S1">
        <xs:annotation>
          <xs:documentation>Secondary 1 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S2">
        <xs:annotation>
          <xs:documentation>Secondary 2 (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssessmentSubjectType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ARA">
        <xs:annotation>
          <xs:documentation>Arabic (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ART">
        <xs:annotation>
          <xs:documentation>Art and Design (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEN">
        <xs:annotation>
          <xs:documentation>Bengali (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHI">
        <xs:annotation>
          <xs:documentation>Chinese (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLL">
        <xs:annotation>
          <xs:documentation>Communication Language and Literacy (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CRE">
        <xs:annotation>
          <xs:documentation>Creative Development (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYM">
        <xs:annotation>
          <xs:documentation>Welsh (locale: W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DAN">
        <xs:annotation>
          <xs:documentation>Danish (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DAT">
        <xs:annotation>
          <xs:documentation>Design and Technology (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DUT">
        <xs:annotation>
          <xs:documentation>Dutch (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENG">
        <xs:annotation>
          <xs:documentation>English (locale: E S W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIN">
        <xs:annotation>
          <xs:documentation>Finnish (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRE">
        <xs:annotation>
          <xs:documentation>French (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FSP">
        <xs:annotation>
          <xs:documentation>Foundation Stage Profile (Total) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAE">
        <xs:annotation>
          <xs:documentation>Gaelic / Gaidhlg (locale: S)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEO">
        <xs:annotation>
          <xs:documentation>Geography (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GER">
        <xs:annotation>
          <xs:documentation>German (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRE">
        <xs:annotation>
          <xs:documentation>Modern Greek (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUJ">
        <xs:annotation>
          <xs:documentation>Gujarati (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEB">
        <xs:annotation>
          <xs:documentation>Modern Hebrew (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HIS">
        <xs:annotation>
          <xs:documentation>History (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ICT">
        <xs:annotation>
          <xs:documentation>Information and Communication Technology (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITA">
        <xs:annotation>
          <xs:documentation>Italian (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JAP">
        <xs:annotation>
          <xs:documentation>Japanese (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KUW">
        <xs:annotation>
          <xs:documentation>Knowledge and Understanding of World (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAT">
        <xs:annotation>
          <xs:documentation>Mathematics / Mathematical Development (locale: E S W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MFL">
        <xs:annotation>
          <xs:documentation>Modern Foreign Language (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUS">
        <xs:annotation>
          <xs:documentation>Music (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAN">
        <xs:annotation>
          <xs:documentation>Panjabi (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PED">
        <xs:annotation>
          <xs:documentation>Physical Education (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHY">
        <xs:annotation>
          <xs:documentation>Physical Development (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POR">
        <xs:annotation>
          <xs:documentation>Portuguese (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSE">
        <xs:annotation>
          <xs:documentation>Personal Social and Emotional Development (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSH">
        <xs:annotation>
          <xs:documentation>Personal Social and Health Education (PSHE) (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RUS">
        <xs:annotation>
          <xs:documentation>Russian (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCI">
        <xs:annotation>
          <xs:documentation>Science (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SPA">
        <xs:annotation>
          <xs:documentation>Spanish (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWE">
        <xs:annotation>
          <xs:documentation>Swedish (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUR">
        <xs:annotation>
          <xs:documentation>Turkish (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="URD">
        <xs:annotation>
          <xs:documentation>Urdu (locale: E)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WEL">
        <xs:annotation>
          <xs:documentation>Welsh (locale: E W)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceSessionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AM">
        <xs:annotation>
          <xs:documentation>AM Session</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PM">
        <xs:annotation>
          <xs:documentation>PM Session</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NA">
        <xs:annotation>
          <xs:documentation>Not Applicable</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceSourceType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BIO">
        <xs:annotation>
          <xs:documentation>Biometric device</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HU">
        <xs:annotation>
          <xs:documentation>Human other than workforce member</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WF">
        <xs:annotation>
          <xs:documentation>Workforce Member</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other non-human input source</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLocaleType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="E">
        <xs:annotation>
          <xs:documentation>England</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>Northern Ireland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Scotland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W">
        <xs:annotation>
          <xs:documentation>Wales/Cymru</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAbsenceCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="MAT">
        <xs:annotation>
          <xs:documentation>Maternity /Paternity leave</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other paid authorised absence, e.g. compassionate leave</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PUB">
        <xs:annotation>
          <xs:documentation>Paid absence for public duties</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEC">
        <xs:annotation>
          <xs:documentation>Secondment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SIC">
        <xs:annotation>
          <xs:documentation>Sickness</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRN">
        <xs:annotation>
          <xs:documentation>Training</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UNA">
        <xs:annotation>
          <xs:documentation>Unauthorised absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UNP">
        <xs:annotation>
          <xs:documentation>Unpaid, authorised absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdditionalPaymentTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="LIN">
        <xs:annotation>
          <xs:documentation>Inner London Weighting (Support Staff)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOT">
        <xs:annotation>
          <xs:documentation>Outer London Weighting (Support Staff)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LFR">
        <xs:annotation>
          <xs:documentation>London Fringe Weighting (Support Staff)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAL">
        <xs:annotation>
          <xs:documentation>Management Allowances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TLR">
        <xs:annotation>
          <xs:documentation>Teaching and Learning Responsibility Payments</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RAR">
        <xs:annotation>
          <xs:documentation>Recruitment and Retention </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEN">
        <xs:annotation>
          <xs:documentation>SEN Allowances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ACT">
        <xs:annotation>
          <xs:documentation>Acting</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RES">
        <xs:annotation>
          <xs:documentation>Residential duties</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INS">
        <xs:annotation>
          <xs:documentation>INSET</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OOS">
        <xs:annotation>
          <xs:documentation>Out of School Activities</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RCP">
        <xs:annotation>
          <xs:documentation>Recruitment Incentive (Pay)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RCC">
        <xs:annotation>
          <xs:documentation>Recruitment Incentive (One Off Payment)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RCA">
        <xs:annotation>
          <xs:documentation>Recruitment Incentive (Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WEL">
        <xs:annotation>
          <xs:documentation>Welcome Back</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GTC">
        <xs:annotation>
          <xs:documentation>GTC subscription </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UQT">
        <xs:annotation>
          <xs:documentation>Unqualified Teachers</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsAptitudeCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="PE">
        <xs:annotation>
          <xs:documentation>Physical Education or Sport</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PA">
        <xs:annotation>
          <xs:documentation>Performing Arts</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VA">
        <xs:annotation>
          <xs:documentation>Visual Arts</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ML">
        <xs:annotation>
          <xs:documentation>Modern Foreign Languages</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DT">
        <xs:annotation>
          <xs:documentation>Design Technology or IT</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsOfferStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Offer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>No offer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W">
        <xs:annotation>
          <xs:documentation>Withdraw Previous Offer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="D">
        <xs:annotation>
          <xs:documentation>Discard (higher preference offered)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsNotifyMethodType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Online</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="E">
        <xs:annotation>
          <xs:documentation>Email</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="T">
        <xs:annotation>
          <xs:documentation>SMS/Text message</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="L">
        <xs:annotation>
          <xs:documentation>Letter</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsPrebandCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1A">
        <xs:annotation>
          <xs:documentation>Band 1A (Highest)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1B">
        <xs:annotation>
          <xs:documentation>Band 1B</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2A">
        <xs:annotation>
          <xs:documentation>Band 2A</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2B">
        <xs:annotation>
          <xs:documentation>Band 2B</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Band 3 (Lowest)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Band Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdmissionsReasonCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DIST">
        <xs:annotation>
          <xs:documentation>Distance</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SIBL">
        <xs:annotation>
          <xs:documentation>Sibling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MEDL">
        <xs:annotation>
          <xs:documentation>Medical</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RLGN">
        <xs:annotation>
          <xs:documentation>Religion</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CTCH">
        <xs:annotation>
          <xs:documentation>Catchment Area</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FEED">
        <xs:annotation>
          <xs:documentation>Feeder School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRAV">
        <xs:annotation>
          <xs:documentation>Travelling Time</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSEX">
        <xs:annotation>
          <xs:documentation>Single Sex School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COED">
        <xs:annotation>
          <xs:documentation>Coeducational School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="APTD">
        <xs:annotation>
          <xs:documentation>Aptitude</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOCL">
        <xs:annotation>
          <xs:documentation>Social Reasons</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTHR">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKADTFileStatusTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Prime">
        <xs:annotation>
          <xs:documentation>These files contain completely new data and should be considered the complete application for the student.  </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Change">
        <xs:annotation>
          <xs:documentation>A 'Change' value means that all data previously supplied (apart from the Application Reference) are to be deleted and only the data in the change file to be used for pupils in the file.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Withdrawal">
        <xs:annotation>
          <xs:documentation>These files advise the  LA or Own Admission Authority school that an application should be noted as withdrawn for a pupil who moves away from the LA during the admissions process.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Suspended">
        <xs:annotation>
          <xs:documentation>This is a precautionary status, as it is not known when it might be used.  These records should go to suspense, as it is not possible to know what to do with them if the condition cannot be determined.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Late">
        <xs:annotation>
          <xs:documentation>The records in this file type are considered as late by the Home LAs criteria.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAdviceAndAssessmentWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AA1">
        <xs:annotation>
          <xs:documentation>School based assessment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AA2">
        <xs:annotation>
          <xs:documentation>External advice/assessment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AA3">
        <xs:annotation>
          <xs:documentation>Specialised assessments</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AA4">
        <xs:annotation>
          <xs:documentation>Multu-agency assessments</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAlternativeTuitionProvisionTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="HSP">
        <xs:annotation>
          <xs:documentation>Hospital</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IND">
        <xs:annotation>
          <xs:documentation>Independent School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NMS">
        <xs:annotation>
          <xs:documentation>Non-maintained Special School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOT">
        <xs:annotation>
          <xs:documentation>Not a School</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAssignmentPostType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ADMC">
        <xs:annotation>
          <xs:documentation>Administrator / Clerk </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ADVT">
        <xs:annotation>
          <xs:documentation>Advisory teacher (unattached)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARTD">
        <xs:annotation>
          <xs:documentation>Art and/or Design Technician</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASHT">
        <xs:annotation>
          <xs:documentation>Assistant head</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATTN">
        <xs:annotation>
          <xs:documentation>Attendance Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BILN">
        <xs:annotation>
          <xs:documentation>Bilingual Support Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BURS">
        <xs:annotation>
          <xs:documentation>Bursar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BUSS">
        <xs:annotation>
          <xs:documentation>Business Manager</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CTKR">
        <xs:annotation>
          <xs:documentation>Caretaker</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TCHR">
        <xs:annotation>
          <xs:documentation>Classroom Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLNR">
        <xs:annotation>
          <xs:documentation>Cleaner</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CXPA">
        <xs:annotation>
          <xs:documentation>Connexions Personal Adviser</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COOK">
        <xs:annotation>
          <xs:documentation>Cook</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COVR">
        <xs:annotation>
          <xs:documentation>Cover Supervisor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CART">
        <xs:annotation>
          <xs:documentation>Creative Arts Specialist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DATA">
        <xs:annotation>
          <xs:documentation>Data Manager / Analyst</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DPHT">
        <xs:annotation>
          <xs:documentation>Deputy head</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EDWO">
        <xs:annotation>
          <xs:documentation>Education Welfare Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EPSY">
        <xs:annotation>
          <xs:documentation>Educational Psychologist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESCT">
        <xs:annotation>
          <xs:documentation>Escort</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INVG">
        <xs:annotation>
          <xs:documentation>Exam Invigilator</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EXAM">
        <xs:annotation>
          <xs:documentation>Examinations Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FINC">
        <xs:annotation>
          <xs:documentation>Finance Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HDTR">
        <xs:annotation>
          <xs:documentation>Head teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HDYR">
        <xs:annotation>
          <xs:documentation>Head of Year</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HDPT">
        <xs:annotation>
          <xs:documentation>Head of Department</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HDHO">
        <xs:annotation>
          <xs:documentation>Head of House</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HLTA">
        <xs:annotation>
          <xs:documentation>Higher Level Teaching Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HSLO">
        <xs:annotation>
          <xs:documentation>Home-School Liaison Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ICTM">
        <xs:annotation>
          <xs:documentation>ICT Network Manager</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ICTT">
        <xs:annotation>
          <xs:documentation>ICT Technician</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INST">
        <xs:annotation>
          <xs:documentation>Instructor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LANG">
        <xs:annotation>
          <xs:documentation>Language support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SPLY">
        <xs:annotation>
          <xs:documentation>LEA Supply Pool</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LRNM">
        <xs:annotation>
          <xs:documentation>Learning Manager</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LMEN">
        <xs:annotation>
          <xs:documentation>Learning Mentor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LSEN">
        <xs:annotation>
          <xs:documentation>Learning Support Assistant (for SEN pupils)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIBR">
        <xs:annotation>
          <xs:documentation>Librarian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LITR">
        <xs:annotation>
          <xs:documentation>Literacy Worker</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MIDA">
        <xs:annotation>
          <xs:documentation>Midday Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MIDS">
        <xs:annotation>
          <xs:documentation>Midday Supervisor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MINS">
        <xs:annotation>
          <xs:documentation>Minority ethnic support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MISC">
        <xs:annotation>
          <xs:documentation>Miscellaneous Teaching Service for the LEA</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUSS">
        <xs:annotation>
          <xs:documentation>Music Specialist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUSC">
        <xs:annotation>
          <xs:documentation>Music tuition (include peripatetic)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NURS">
        <xs:annotation>
          <xs:documentation>Nurse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NNSE">
        <xs:annotation>
          <xs:documentation>Nursery Nurse </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OMAN">
        <xs:annotation>
          <xs:documentation>Office Manager</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CATR">
        <xs:annotation>
          <xs:documentation>Other Catering Staff</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OICT">
        <xs:annotation>
          <xs:documentation>Other ICT Support Staff</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PERI">
        <xs:annotation>
          <xs:documentation>Peripatetic Teacher (unattached)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAHT">
        <xs:annotation>
          <xs:documentation>Personal Assistant to Headteacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PREM">
        <xs:annotation>
          <xs:documentation>Premises Manager</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RECP">
        <xs:annotation>
          <xs:documentation>Receptionist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RPRG">
        <xs:annotation>
          <xs:documentation>Reprographics Technician</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSEC">
        <xs:annotation>
          <xs:documentation>School Secretary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STCH">
        <xs:annotation>
          <xs:documentation>Science Technician</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SENC">
        <xs:annotation>
          <xs:documentation>SEN co-ordinator</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TNON">
        <xs:annotation>
          <xs:documentation>Teacher: engaged for non-school education</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TPRU">
        <xs:annotation>
          <xs:documentation>Teacher: engaged to teach in a Pupil Referral Unit</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMIS">
        <xs:annotation>
          <xs:documentation>Teacher: engaged to teach in miscellaneous establishments</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TASS">
        <xs:annotation>
          <xs:documentation>Teaching Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TTCH">
        <xs:annotation>
          <xs:documentation>Technology Technician</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="THER">
        <xs:annotation>
          <xs:documentation>Therapist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRAV">
        <xs:annotation>
          <xs:documentation>Traveller support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VOLN">
        <xs:annotation>
          <xs:documentation>Volunteer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WELF">
        <xs:annotation>
          <xs:documentation>Welfare Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASTE">
        <xs:annotation>
          <xs:documentation>Advanced Skills Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ACAR">
        <xs:annotation>
          <xs:documentation>Assistant Caretaker</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ACOO">
        <xs:annotation>
          <xs:documentation> Assistant Cook</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HCOO">
        <xs:annotation>
          <xs:documentation>Head Cook</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LASS">
        <xs:annotation>
          <xs:documentation>Lab Assistant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOFF">
        <xs:annotation>
          <xs:documentation>Site Officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RESP">
        <xs:annotation>
          <xs:documentation>Post of Responsibility</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKIllnessCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ALLE">
        <xs:annotation>
          <xs:documentation>Allergy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALDR">
        <xs:annotation>
          <xs:documentation>Alcohol or Drug Related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ANXI">
        <xs:annotation>
          <xs:documentation>Anxiety or Depression</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BLOO">
        <xs:annotation>
          <xs:documentation>Blood Condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CANC">
        <xs:annotation>
          <xs:documentation>Cancer or Tumour</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHFS">
        <xs:annotation>
          <xs:documentation>Chronic Fatigue Syndrome</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CIRC">
        <xs:annotation>
          <xs:documentation>Circulation Condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DENT">
        <xs:annotation>
          <xs:documentation>Dental</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DIAB">
        <xs:annotation>
          <xs:documentation>Diabetes</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DIGE">
        <xs:annotation>
          <xs:documentation>Digestive or nutrition condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EARC">
        <xs:annotation>
          <xs:documentation>Ear conditions</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EPIL">
        <xs:annotation>
          <xs:documentation>Epilepsy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EYEC">
        <xs:annotation>
          <xs:documentation>Eye conditions</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FOOD">
        <xs:annotation>
          <xs:documentation>Food borne illness</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAST">
        <xs:annotation>
          <xs:documentation>Gastrointestinal condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEUR">
        <xs:annotation>
          <xs:documentation>Genital / Urinary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEMI">
        <xs:annotation>
          <xs:documentation>Headache / Migrane</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HRTC">
        <xs:annotation>
          <xs:documentation>Heart condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEAT">
        <xs:annotation>
          <xs:documentation>Heat or sun related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INFE">
        <xs:annotation>
          <xs:documentation>Infection</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INJB">
        <xs:annotation>
          <xs:documentation>Injury - back or neck</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INJH">
        <xs:annotation>
          <xs:documentation>Injury - head</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INJL">
        <xs:annotation>
          <xs:documentation>Injury - limb</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INJO">
        <xs:annotation>
          <xs:documentation>Injury - other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KIDN">
        <xs:annotation>
          <xs:documentation>Kidney condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIVR">
        <xs:annotation>
          <xs:documentation>Liver condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MHEL">
        <xs:annotation>
          <xs:documentation>Mental health related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MBOL">
        <xs:annotation>
          <xs:documentation>Metabolic condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUSK">
        <xs:annotation>
          <xs:documentation>Musculo-Skeletal Condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NEUR">
        <xs:annotation>
          <xs:documentation>Neurological condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOTR">
        <xs:annotation>
          <xs:documentation>Nose or Throat condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NKNO">
        <xs:annotation>
          <xs:documentation>Not known</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NSPE">
        <xs:annotation>
          <xs:documentation>Not specified</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OPER">
        <xs:annotation>
          <xs:documentation>Operation or Post Operative</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PREG">
        <xs:annotation>
          <xs:documentation>Pregnancy Related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSYC">
        <xs:annotation>
          <xs:documentation>Psychological Condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="REPR">
        <xs:annotation>
          <xs:documentation>Reproductive</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RESP">
        <xs:annotation>
          <xs:documentation>Respiratory condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SKIN">
        <xs:annotation>
          <xs:documentation>Skin disorder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STRS">
        <xs:annotation>
          <xs:documentation>Stress Related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="THYR">
        <xs:annotation>
          <xs:documentation>Thyroid condition</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRAU">
        <xs:annotation>
          <xs:documentation>Trauma Related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VIRC">
        <xs:annotation>
          <xs:documentation>Virus - Common</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VIRE">
        <xs:annotation>
          <xs:documentation>Virus - Epidemic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAbsenceReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ACCI">
        <xs:annotation>
          <xs:documentation>Accident at Work</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COMP">
        <xs:annotation>
          <xs:documentation>Compassionate leave</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INDI">
        <xs:annotation>
          <xs:documentation>Industrial Injury</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAPA">
        <xs:annotation>
          <xs:documentation>Maternity / Paternity</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CARE">
        <xs:annotation>
          <xs:documentation>Nominated Carer leave</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OPAY">
        <xs:annotation>
          <xs:documentation>Other paid authorised absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAPD">
        <xs:annotation>
          <xs:documentation>Paid absence for public duties</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHAS">
        <xs:annotation>
          <xs:documentation>Phased return to work</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SECO">
        <xs:annotation>
          <xs:documentation>Secondment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SICK">
        <xs:annotation>
          <xs:documentation>Sickness</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STRI">
        <xs:annotation>
          <xs:documentation>Strike action</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRAI">
        <xs:annotation>
          <xs:documentation>Training</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UNAU">
        <xs:annotation>
          <xs:documentation>Unauthorised absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UPAY">
        <xs:annotation>
          <xs:documentation>Unpaid authorised absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="/">
        <xs:annotation>
          <xs:documentation>Present (AM)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="\">
        <xs:annotation>
          <xs:documentation>Present (PM)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="B">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil being educated off site (not dual registration)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="C">
        <xs:annotation>
          <xs:documentation>Authorised absence as pupil is absent due to other authorised circumstances, including Public performances and employment (licensed under regulations), family bereavement, special occasions (in limited circumstances), absences when Traveller children are attending another school.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="D">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil is dual registered (i.e. attending another establishment)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="E">
        <xs:annotation>
          <xs:documentation>Authorised absence as pupil is excluded, with no alternative provision made</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="F">
        <xs:annotation>
          <xs:documentation>Authorised absence due to agreed extended family holiday</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="G">
        <xs:annotation>
          <xs:documentation>Unauthorised absence as pupil is on a family holiday, not agreed, or is taking days in excess of an agreed family holiday</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="H">
        <xs:annotation>
          <xs:documentation>Authorised absence due to agreed family holiday</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="I">
        <xs:annotation>
          <xs:documentation>Authorised absence due to Illness (NOT medical or dental etc. appointments)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="J">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil is attending interview</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="K">
        <xs:annotation>
          <xs:documentation>Unknown - used as a placeholder in lieu of valid data. Assumed to be authorised and present until otherwise proven or changed.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="L">
        <xs:annotation>
          <xs:documentation>Late (before registers closed) marked as present</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Authorised absence due to medical / dental appointments</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>Unauthorised absence as pupil missed sessions for a reason that has not yet been provided</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Unauthorised absence as pupil missed sessions for an unauthorised absence not covered by any other code/description</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil is attending an approved sporting activity</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="R">
        <xs:annotation>
          <xs:documentation>Authorised absence due to religious observance</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Authorised absence due to study leave</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="T">
        <xs:annotation>
          <xs:documentation>Authorised absence due to traveller absence</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Unauthorised absence as pupil arrived after registers closed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="V">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil is away on an educational visit or trip</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W">
        <xs:annotation>
          <xs:documentation>Approved education activity as pupil is attending work experience</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="X">
        <xs:annotation>
          <xs:documentation>Non-compulsory school age absence - not counted in possible attendances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Y">
        <xs:annotation>
          <xs:documentation>Enforced closure - not counted in possible attendances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Z">
        <xs:annotation>
          <xs:documentation>Pupil not yet on roll - not counted in possible attendances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="#">
        <xs:annotation>
          <xs:documentation>School closed to pupils - not counted in possible attendances</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKAttendanceDomainType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Lesson">
        <xs:annotation>
          <xs:documentation>Domain is recorded for a lesson only</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Session">
        <xs:annotation>
          <xs:documentation>Domain is recorded for a session only</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Both">
        <xs:annotation>
          <xs:documentation>Domain applies to both lessons and sessions</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBasicSkillsSupportWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="00">
        <xs:annotation>
          <xs:documentation>Does not require support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="01">
        <xs:annotation>
          <xs:documentation>Specialist literacy support only</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="02">
        <xs:annotation>
          <xs:documentation>Specialist numeracy support only</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="03">
        <xs:annotation>
          <xs:documentation>specialist literacy and numeracy support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="04">
        <xs:annotation>
          <xs:documentation>other literacy support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="05">
        <xs:annotation>
          <xs:documentation>other numeracy support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="06">
        <xs:annotation>
          <xs:documentation>other literacy and numeracy support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="07">
        <xs:annotation>
          <xs:documentation>Needs support but has not/will not receive support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="90">
        <xs:annotation>
          <xs:documentation>Basic Skills needs not assessed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBirthDateVerificationLevelType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="0">
        <xs:annotation>
          <xs:documentation>Not Verified</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>One or more of the following Secondary certificates: Certificate of Baptism; Marriage Certificate; National Health Service Medical Card; Child's Certificate of Vaccination; Child's Health Record Card; A certificate of Service in HM Forces or other employment under the Crown or in the Mercantile Marine; A certificate of membership of a Trade Union Friendly Society or any cards or papers relating to membership of an Approved Society or Unemployment Insurance Apprenticeship indentures; Early certificate or testimonial from employer; Aliens registration card, certificate of naturalisation, Home Office travel document or a passport; Life insurance policy; Certificate of confirmation; School certificate or report; A birthday book or old family record; Family Bible containing a record of birth.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>One of the following:  Full certificate; Birth certificate short form; Certificate of registry showing given names and family name; GRO copy; Adoption Order issued by the High Court, County Court or Juvenile Court; Certificate of adoption issued by the GRO; Foreign birth certificate issued by registration authority of the foreign country.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKBoarderTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="B">
        <xs:annotation>
          <xs:documentation>Boarder, nights per week not specified</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Boarder, six nights or less a week</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Boarder, seven nights a week</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>Not a boarder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKClassTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>Nursery Class (England), Nursery Class (not a Special Class/Unit) (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Not a Nursery Class (England), Other Class (not a Special Class/Unit) (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Nursery Special Class/Unit (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKConnexionsAgreementType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="Yes">
        <xs:annotation>
          <xs:documentation>Permission has been given by the parent or guardian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="No">
        <xs:annotation>
          <xs:documentation>Parent or guardian has refused permission</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UNS">
        <xs:annotation>
          <xs:documentation>Unsought - School has not yet sent out Fair Processing Notices (Data cannot be shared with Connexions)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SNR">
        <xs:annotation>
          <xs:documentation>Sought, No Reply - School has sent out Fair Processing Notices, but has received no reply from parent or guardian (Data can be shared with Connexions)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKCurriculumAndTeachingMethodsWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="CT1">
        <xs:annotation>
          <xs:documentation>Some targeted differentiation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CT2">
        <xs:annotation>
          <xs:documentation>Significant and targeted differentiation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CT3">
        <xs:annotation>
          <xs:documentation>Some curriculum modifications</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CT4">
        <xs:annotation>
          <xs:documentation>Significant curriculum modifications</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKExclusionReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BU">
        <xs:annotation>
          <xs:documentation>Bullying</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DA">
        <xs:annotation>
          <xs:documentation>Drug and alcohol related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DB">
        <xs:annotation>
          <xs:documentation>Persistent disruptive behaviour</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DM">
        <xs:annotation>
          <xs:documentation>Damage to property</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DR">
        <xs:annotation>
          <xs:documentation>Defiance of rules/ discipline policy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PA">
        <xs:annotation>
          <xs:documentation>Physical assault against an adult</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PP">
        <xs:annotation>
          <xs:documentation>Physical assault against a pupil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PW">
        <xs:annotation>
          <xs:documentation>Possession / use of weapon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RA">
        <xs:annotation>
          <xs:documentation>Racial harrassment/abuse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SM">
        <xs:annotation>
          <xs:documentation>Sexual misconduct/abuse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TB">
        <xs:annotation>
          <xs:documentation>Threatening or dangerous behaviour</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TH">
        <xs:annotation>
          <xs:documentation>Theft</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VA">
        <xs:annotation>
          <xs:documentation>Verbal abuse/threatening behaviour against an adult</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VP">
        <xs:annotation>
          <xs:documentation>Verbal abuse/threatening behaviour against a pupil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKFamilyStructureType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Single Parent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="A">
        <xs:annotation>
          <xs:documentation>2 Adults</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="F">
        <xs:annotation>
          <xs:documentation>Foster Parents</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="C">
        <xs:annotation>
          <xs:documentation>In Residental Care</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGeneralSubjectType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AAD">
        <xs:annotation>
          <xs:documentation>Applied Art and Design</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ABS">
        <xs:annotation>
          <xs:documentation>Applied Business Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ACC">
        <xs:annotation>
          <xs:documentation>Accountancy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AHS">
        <xs:annotation>
          <xs:documentation>Combined Arts / Humanities / Social studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AIT">
        <xs:annotation>
          <xs:documentation>Applied ICT</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARA">
        <xs:annotation>
          <xs:documentation>Arabic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ART">
        <xs:annotation>
          <xs:documentation>Art and Design / Art</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASC">
        <xs:annotation>
          <xs:documentation>Applied Science</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEN">
        <xs:annotation>
          <xs:documentation>Bengali</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIO">
        <xs:annotation>
          <xs:documentation>Biology / Botany / Zoology / Ecology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAB">
        <xs:annotation>
          <xs:documentation>Commercial and Business Studies/Education/Management</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAR">
        <xs:annotation>
          <xs:documentation>Careers Education</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CBE">
        <xs:annotation>
          <xs:documentation>Construction and Built Environment / Building</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CDT">
        <xs:annotation>
          <xs:documentation>Craft, Design and Technology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHD">
        <xs:annotation>
          <xs:documentation>Child Development</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHI">
        <xs:annotation>
          <xs:documentation>Chinese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHM">
        <xs:annotation>
          <xs:documentation>Chemistry</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CIT">
        <xs:annotation>
          <xs:documentation>Citizenship</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLS">
        <xs:annotation>
          <xs:documentation>Classics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COM">
        <xs:annotation>
          <xs:documentation>Communication Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COS">
        <xs:annotation>
          <xs:documentation>Community Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CSB">
        <xs:annotation>
          <xs:documentation>Combined/General Science - Biology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CSC">
        <xs:annotation>
          <xs:documentation>Combined/General Science - Chemistry</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CSP">
        <xs:annotation>
          <xs:documentation>Combined/General Science - Physics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYM">
        <xs:annotation>
          <xs:documentation>Cymraeg/Welsh (as First Language)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DAN">
        <xs:annotation>
          <xs:documentation>Danish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DAT">
        <xs:annotation>
          <xs:documentation>Design and Technology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DNC">
        <xs:annotation>
          <xs:documentation>Dance</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DRA">
        <xs:annotation>
          <xs:documentation>Drama</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTE">
        <xs:annotation>
          <xs:documentation>Design and Technology - Electronics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTF">
        <xs:annotation>
          <xs:documentation>Design and Technology - Food Technology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTG">
        <xs:annotation>
          <xs:documentation>Design and Technology - Graphics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTR">
        <xs:annotation>
          <xs:documentation>Design and Technology - Resistant Materials</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTS">
        <xs:annotation>
          <xs:documentation>Design and Technology - Systems and Control</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DTT">
        <xs:annotation>
          <xs:documentation>Design and Technology - Textiles</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DUT">
        <xs:annotation>
          <xs:documentation>Dutch</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ECO">
        <xs:annotation>
          <xs:documentation>Economics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EDU">
        <xs:annotation>
          <xs:documentation>Education</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENG">
        <xs:annotation>
          <xs:documentation>English</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENR">
        <xs:annotation>
          <xs:documentation>Engineering</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENV">
        <xs:annotation>
          <xs:documentation>Environmental Science/Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EUR">
        <xs:annotation>
          <xs:documentation>European Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIN">
        <xs:annotation>
          <xs:documentation>Finnish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRE">
        <xs:annotation>
          <xs:documentation>French</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEN">
        <xs:annotation>
          <xs:documentation>General Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEO">
        <xs:annotation>
          <xs:documentation>Geography</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GER">
        <xs:annotation>
          <xs:documentation>German</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GLG">
        <xs:annotation>
          <xs:documentation>Geology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GPL">
        <xs:annotation>
          <xs:documentation>Government and Politics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRC">
        <xs:annotation>
          <xs:documentation>Greek (Classical)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRE">
        <xs:annotation>
          <xs:documentation>Greek (Modern)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUJ">
        <xs:annotation>
          <xs:documentation>Gujerati</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HAC">
        <xs:annotation>
          <xs:documentation>Hospitality and Catering</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HBB">
        <xs:annotation>
          <xs:documentation>Hebrew (Biblical)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEB">
        <xs:annotation>
          <xs:documentation>Hebrew (Modern)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HIN">
        <xs:annotation>
          <xs:documentation>Hindi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HIS">
        <xs:annotation>
          <xs:documentation>History</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HSC">
        <xs:annotation>
          <xs:documentation>Health and Social Care</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HUM">
        <xs:annotation>
          <xs:documentation>Humanities</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ICT">
        <xs:annotation>
          <xs:documentation>Information and Communication Technology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IND">
        <xs:annotation>
          <xs:documentation>Industrial Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITA">
        <xs:annotation>
          <xs:documentation>Italian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JAP">
        <xs:annotation>
          <xs:documentation>Japanese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KSK">
        <xs:annotation>
          <xs:documentation>Key Skills (Only if KeyStage = 4)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAE">
        <xs:annotation>
          <xs:documentation>Land and Environment / Agriculture</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAT">
        <xs:annotation>
          <xs:documentation>Latin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAW">
        <xs:annotation>
          <xs:documentation>Law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIF">
        <xs:annotation>
          <xs:documentation>Life Skills</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LTT">
        <xs:annotation>
          <xs:documentation>Leisure, Travel and Tourism</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAT">
        <xs:annotation>
          <xs:documentation>Mathematics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MED">
        <xs:annotation>
          <xs:documentation>Media Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MFL">
        <xs:annotation>
          <xs:documentation>Modern Foreign Language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNF">
        <xs:annotation>
          <xs:documentation>Manufacturing</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUS">
        <xs:annotation>
          <xs:documentation>Music</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OBC">
        <xs:annotation>
          <xs:documentation>Other Business / Commercial Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OCL">
        <xs:annotation>
          <xs:documentation>Other Classical Studies/Language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OHU">
        <xs:annotation>
          <xs:documentation>Other Humanities</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OLA">
        <xs:annotation>
          <xs:documentation>Other Language Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OMA">
        <xs:annotation>
          <xs:documentation>Other Mathematical Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OPH">
        <xs:annotation>
          <xs:documentation>Other Physical Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OPR">
        <xs:annotation>
          <xs:documentation>Other Aesthetic / Practical Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OSC">
        <xs:annotation>
          <xs:documentation>Other Sciences</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OSS">
        <xs:annotation>
          <xs:documentation>Other Social Studies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTE">
        <xs:annotation>
          <xs:documentation>Other Technological Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other (not otherwise specified)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OVO">
        <xs:annotation>
          <xs:documentation>Other Vocational Subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAN">
        <xs:annotation>
          <xs:documentation>Panjabi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PED">
        <xs:annotation>
          <xs:documentation>Physical Education / Sports</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PER">
        <xs:annotation>
          <xs:documentation>Performing Arts</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHL">
        <xs:annotation>
          <xs:documentation>Philosophy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHY">
        <xs:annotation>
          <xs:documentation>Physics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POR">
        <xs:annotation>
          <xs:documentation>Portuguese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRI">
        <xs:annotation>
          <xs:documentation>Primary Curriculum</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSH">
        <xs:annotation>
          <xs:documentation>Personal Social and Health Education (PSHE)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSY">
        <xs:annotation>
          <xs:documentation>Psychology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="REL">
        <xs:annotation>
          <xs:documentation>Religious Education</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RUS">
        <xs:annotation>
          <xs:documentation>Russian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RWD">
        <xs:annotation>
          <xs:documentation>Retail, Warehousing and Distribution</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCI">
        <xs:annotation>
          <xs:documentation>Science</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEN">
        <xs:annotation>
          <xs:documentation>Special Educational Needs</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOC">
        <xs:annotation>
          <xs:documentation>Sociology</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SPA">
        <xs:annotation>
          <xs:documentation>Spanish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSS">
        <xs:annotation>
          <xs:documentation>Social Studies/Science</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STA">
        <xs:annotation>
          <xs:documentation>Statistics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWE">
        <xs:annotation>
          <xs:documentation>Swedish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TDG">
        <xs:annotation>
          <xs:documentation>Technical Drawing/Graphics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUR">
        <xs:annotation>
          <xs:documentation>Turkish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UFA">
        <xs:annotation>
          <xs:documentation>Under-5 Activities</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="URD">
        <xs:annotation>
          <xs:documentation>Urdu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VNW">
        <xs:annotation>
          <xs:documentation>Any new GCSE in a vocational subject</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WEL">
        <xs:annotation>
          <xs:documentation>Welsh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGovernanceTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="CO">
        <xs:annotation>
          <xs:documentation>Community</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VA">
        <xs:annotation>
          <xs:documentation>Voluntary Aided</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VC">
        <xs:annotation>
          <xs:documentation>Voluntary Controlled</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FO">
        <xs:annotation>
          <xs:documentation>Foundation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IN">
        <xs:annotation>
          <xs:documentation>Independent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NM">
        <xs:annotation>
          <xs:documentation>Non-maintained (England only)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CT">
        <xs:annotation>
          <xs:documentation>City Technology College (England only)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CA">
        <xs:annotation>
          <xs:documentation>Academies (England only)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGroupRoleType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="HDT">
        <xs:annotation>
          <xs:documentation>Head teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DHT">
        <xs:annotation>
          <xs:documentation>Deputy head</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AHT">
        <xs:annotation>
          <xs:documentation>Assistant head</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TCH">
        <xs:annotation>
          <xs:documentation>Classroom teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AST">
        <xs:annotation>
          <xs:documentation>Advanced Skills Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EXL">
        <xs:annotation>
          <xs:documentation>Excellent Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUP">
        <xs:annotation>
          <xs:documentation>Support staff</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AVT">
        <xs:annotation>
          <xs:documentation>Advisory Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EPS">
        <xs:annotation>
          <xs:documentation>Educational Psychologist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ADM">
        <xs:annotation>
          <xs:documentation>Administrator (Additional code for use in the Learning Platform)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GOV">
        <xs:annotation>
          <xs:documentation>Governor (Additional code for use in the Learning Platform)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ACD">
        <xs:annotation>
          <xs:documentation>Academic (Additional code for use in the Learning Platform)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other (Additional code for use in the Learning Platform)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VOL">
        <xs:annotation>
          <xs:documentation>Volunteer (Additional code for use in the Learning Platform)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKGroupingAndSupportWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="GS1">
        <xs:annotation>
          <xs:documentation>Occassional additional support in class</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GS2">
        <xs:annotation>
          <xs:documentation>Targeted and sustained additional support</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GS3">
        <xs:annotation>
          <xs:documentation>Small group class provision</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GS4">
        <xs:annotation>
          <xs:documentation>Mostly small group provision</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKInCareTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="FT">
        <xs:annotation>
          <xs:documentation>Fostered</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CH">
        <xs:annotation>
          <xs:documentation>Children's Home</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WP">
        <xs:annotation>
          <xs:documentation>With parents</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PA">
        <xs:annotation>
          <xs:documentation>Placed for adoption</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLanguageStudyType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Taught as a first language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Taught as a second language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Taught other language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Not taught language at all</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Disapplied from curriculum by SEN statement</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLearnerEnrolmentStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="C">
        <xs:annotation>
          <xs:documentation>Current (single registration at this school)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="G">
        <xs:annotation>
          <xs:documentation>Guest (pupil not registered at this school but attending some lessons or sessions)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Current Main (dual registration)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Current Subsidiary (dual registration)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>Previous</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLearnerIdentityType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="WAL">
        <xs:annotation>
          <xs:documentation>Welsh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENG">
        <xs:annotation>
          <xs:documentation>English</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCO">
        <xs:annotation>
          <xs:documentation>Scottish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IRE">
        <xs:annotation>
          <xs:documentation>Irish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRI">
        <xs:annotation>
          <xs:documentation>British</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="REF">
        <xs:annotation>
          <xs:documentation>Refused</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOS">
        <xs:annotation>
          <xs:documentation>Not Supplied</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLeavingDestinationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="MP">
        <xs:annotation>
          <xs:documentation>Maintained primary school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IP">
        <xs:annotation>
          <xs:documentation>Independent primary school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MS">
        <xs:annotation>
          <xs:documentation>Maintained secondary school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IS">
        <xs:annotation>
          <xs:documentation>Independent secondary school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SC">
        <xs:annotation>
          <xs:documentation>6th Form College</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FE">
        <xs:annotation>
          <xs:documentation>General FE, tertiary and specialist colleges </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HE">
        <xs:annotation>
          <xs:documentation>Higher education institutions</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WL">
        <xs:annotation>
          <xs:documentation>Work based Learning</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EM">
        <xs:annotation>
          <xs:documentation>Employment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NK">
        <xs:annotation>
          <xs:documentation>Other/Not Known</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKLeavingReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="DD">
        <xs:annotation>
          <xs:documentation>Deceased</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EO">
        <xs:annotation>
          <xs:documentation>Education other than at school/college</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EM">
        <xs:annotation>
          <xs:documentation>Emigration</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FE">
        <xs:annotation>
          <xs:documentation>Further Education (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FM">
        <xs:annotation>
          <xs:documentation>First to Middle Phase Transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HE">
        <xs:annotation>
          <xs:documentation>Higher Education (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NI">
        <xs:annotation>
          <xs:documentation>Nursery to Infant</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IJ">
        <xs:annotation>
          <xs:documentation>Infant to Junior/Primary Phase Transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JS">
        <xs:annotation>
          <xs:documentation>Junior/Primary to Secondary Phase Transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MS">
        <xs:annotation>
          <xs:documentation>Middle to Secondary Phase Transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OS">
        <xs:annotation>
          <xs:documentation>Other School Sixth Form (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other/Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PE">
        <xs:annotation>
          <xs:documentation>Permanent Exclusion</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ST">
        <xs:annotation>
          <xs:documentation>School Transfer (Mid-Year)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TR">
        <xs:annotation>
          <xs:documentation>Training (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UN">
        <xs:annotation>
          <xs:documentation>Unemployment (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WK">
        <xs:annotation>
          <xs:documentation>Employment (Leaver)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MD">
        <xs:annotation>
          <xs:documentation>Military deployment of parent(s)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKMaritalStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Single</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Married</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="D">
        <xs:annotation>
          <xs:documentation>Divorced</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W">
        <xs:annotation>
          <xs:documentation>Widowed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>Not disclosed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>Separated</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKNCYearGroupType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N1">
        <xs:annotation>
          <xs:documentation>Nursery first year</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="N2">
        <xs:annotation>
          <xs:documentation>Nursery second year</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="R">
        <xs:annotation>
          <xs:documentation>Reception</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Year 1</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Year 2</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Year 3</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Year 4</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>Year 5</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="6">
        <xs:annotation>
          <xs:documentation>Year 6</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="7">
        <xs:annotation>
          <xs:documentation>Year 7</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8">
        <xs:annotation>
          <xs:documentation>Year 8</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="9">
        <xs:annotation>
          <xs:documentation>Year 9</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>Year 10</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>Year 11</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>Year 12</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="13">
        <xs:annotation>
          <xs:documentation>Year 13</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="14">
        <xs:annotation>
          <xs:documentation>Year 14</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Mixed Year Class - available for School Census Class Information</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="X">
        <xs:annotation>
          <xs:documentation>National Curriculum not followed  available only for Special Schools where pupils are not following a particular NC Year</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="U">
        <xs:annotation>
          <xs:documentation>Unknown</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKOperationalStatusType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Open</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="2">
        <xs:annotation>
          <xs:documentation>Closed</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="3">
        <xs:annotation>
          <xs:documentation>Open, but proposed to close</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="4">
        <xs:annotation>
          <xs:documentation>Proposed to open</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="5">
        <xs:annotation>
          <xs:documentation>De-registered as EY Setting</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPhaseTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="NY">
        <xs:annotation>
          <xs:documentation>Nursery</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PY">
        <xs:annotation>
          <xs:documentation>Primary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MP">
        <xs:annotation>
          <xs:documentation>Middle (Deemed Primary)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MS">
        <xs:annotation>
          <xs:documentation>Middle (Deemed Secondary)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SY">
        <xs:annotation>
          <xs:documentation>Secondary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SP">
        <xs:annotation>
          <xs:documentation>Special</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EY">
        <xs:annotation>
          <xs:documentation>Early Years Setting</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PR">
        <xs:annotation>
          <xs:documentation>Pupil Referral Unit (PRU)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XX">
        <xs:annotation>
          <xs:documentation>Multiple phases (not Middle, Special, or PRU)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NO">
        <xs:annotation>
          <xs:documentation>No Establishment (for children not on any establishment roll)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPhoneTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="F">
        <xs:annotation>
          <xs:documentation>Fax</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="H">
        <xs:annotation>
          <xs:documentation>Home</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="A">
        <xs:annotation>
          <xs:documentation>Alternate Home</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="M">
        <xs:annotation>
          <xs:documentation>Mobile</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="W">
        <xs:annotation>
          <xs:documentation>Work</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="D">
        <xs:annotation>
          <xs:documentation>Minicom (hearing impaired/disabled)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKRelationshipType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="ASWR">
        <xs:annotation>
          <xs:documentation>Agency representative</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CARE">
        <xs:annotation>
          <xs:documentation>Carer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHMR">
        <xs:annotation>
          <xs:documentation>Childminder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DEPD">
        <xs:annotation>
          <xs:documentation>Dependent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DOCT">
        <xs:annotation>
          <xs:documentation>Doctor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EMPY">
        <xs:annotation>
          <xs:documentation>Employer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAAP">
        <xs:annotation>
          <xs:documentation>Adoptive parents</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAAS">
        <xs:annotation>
          <xs:documentation>Adopted son</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FABH">
        <xs:annotation>
          <xs:documentation>Brother, half</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FABI">
        <xs:annotation>
          <xs:documentation>Brother-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FABN">
        <xs:annotation>
          <xs:documentation>Brother, natural/adoptive</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FABS">
        <xs:annotation>
          <xs:documentation>Brother, step</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FADF">
        <xs:annotation>
          <xs:documentation>Foster daughter</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FADI">
        <xs:annotation>
          <xs:documentation>Daughter-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FADR">
        <xs:annotation>
          <xs:documentation>Daughter</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAFF">
        <xs:annotation>
          <xs:documentation>Father, foster</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAFI">
        <xs:annotation>
          <xs:documentation>Father-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAFN">
        <xs:annotation>
          <xs:documentation>Father, natural/adoptive</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAFO">
        <xs:annotation>
          <xs:documentation>Father's significant other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAFS">
        <xs:annotation>
          <xs:documentation>Father, step</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGA">
        <xs:annotation>
          <xs:documentation>Great aunt</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGD">
        <xs:annotation>
          <xs:documentation>Granddaughter</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGF">
        <xs:annotation>
          <xs:documentation>Grandfather</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGM">
        <xs:annotation>
          <xs:documentation>Grandmother</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGS">
        <xs:annotation>
          <xs:documentation>Grandson</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAGU">
        <xs:annotation>
          <xs:documentation>Great uncle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FALP">
        <xs:annotation>
          <xs:documentation>Life partner</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMF">
        <xs:annotation>
          <xs:documentation>Mother, foster</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMH">
        <xs:annotation>
          <xs:documentation>Husband</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMI">
        <xs:annotation>
          <xs:documentation>Mother-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMN">
        <xs:annotation>
          <xs:documentation>Mother, natural/adoptive</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMO">
        <xs:annotation>
          <xs:documentation>Mother's significant other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAMS">
        <xs:annotation>
          <xs:documentation>Mother, step</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FANC">
        <xs:annotation>
          <xs:documentation>Niece</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FANW">
        <xs:annotation>
          <xs:documentation>Nephew</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAOT">
        <xs:annotation>
          <xs:documentation>Family member</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAPF">
        <xs:annotation>
          <xs:documentation>Foster parent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAPP">
        <xs:annotation>
          <xs:documentation>Life partner of parent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASF">
        <xs:annotation>
          <xs:documentation>Foster son</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASH">
        <xs:annotation>
          <xs:documentation>Sister, half</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASI">
        <xs:annotation>
          <xs:documentation>Sister-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASN">
        <xs:annotation>
          <xs:documentation>Sister, natural/adoptive</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASO">
        <xs:annotation>
          <xs:documentation>Son</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASP">
        <xs:annotation>
          <xs:documentation>Stepson</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASS">
        <xs:annotation>
          <xs:documentation>Sister, step</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FASW">
        <xs:annotation>
          <xs:documentation>Son-in-law</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FNCF">
        <xs:annotation>
          <xs:documentation>Fiance</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FNCM">
        <xs:annotation>
          <xs:documentation>Fianc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRND">
        <xs:annotation>
          <xs:documentation>Friend</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUAR">
        <xs:annotation>
          <xs:documentation>Court appointed guardian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HTCR">
        <xs:annotation>
          <xs:documentation>Head Teacher</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NONE">
        <xs:annotation>
          <xs:documentation>None</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OREL">
        <xs:annotation>
          <xs:documentation>Other relative</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTHR">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PREH">
        <xs:annotation>
          <xs:documentation>Former husband</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PREW">
        <xs:annotation>
          <xs:documentation>Former wife</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PROB">
        <xs:annotation>
          <xs:documentation>Probation officer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PTNP">
        <xs:annotation>
          <xs:documentation>Partner of parent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PTNR">
        <xs:annotation>
          <xs:documentation>Partner</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RELA">
        <xs:annotation>
          <xs:documentation>Aunt</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RELC">
        <xs:annotation>
          <xs:documentation>Cousin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RELG">
        <xs:annotation>
          <xs:documentation>Minister or priest</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RELU">
        <xs:annotation>
          <xs:documentation>Uncle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SIGO">
        <xs:annotation>
          <xs:documentation>Significant other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWKR">
        <xs:annotation>
          <xs:documentation>Social Worker</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TADV">
        <xs:annotation>
          <xs:documentation>Advisor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WARD">
        <xs:annotation>
          <xs:documentation>Ward</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WIFE">
        <xs:annotation>
          <xs:documentation>Wife</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKReligiousAffiliationType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BA">
        <xs:annotation>
          <xs:documentation>Baptist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BU">
        <xs:annotation>
          <xs:documentation>Buddhist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CE">
        <xs:annotation>
          <xs:documentation>Church of England</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CH">
        <xs:annotation>
          <xs:documentation>Christian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CO">
        <xs:annotation>
          <xs:documentation>Congregational</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EC">
        <xs:annotation>
          <xs:documentation>Christian (Ecumenical)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FR">
        <xs:annotation>
          <xs:documentation>Free Church</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GR">
        <xs:annotation>
          <xs:documentation>Greek Orthodox</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HI">
        <xs:annotation>
          <xs:documentation>Hindu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JE">
        <xs:annotation>
          <xs:documentation>Jewish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JW">
        <xs:annotation>
          <xs:documentation>Jehovah's Witness</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LU">
        <xs:annotation>
          <xs:documentation>Lutheran</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ME">
        <xs:annotation>
          <xs:documentation>Methodist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MO">
        <xs:annotation>
          <xs:documentation>Mormon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MU">
        <xs:annotation>
          <xs:documentation>Muslim</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ND">
        <xs:annotation>
          <xs:documentation>Non-denominational/Secular</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NO">
        <xs:annotation>
          <xs:documentation>No religion</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other Religious Affiliation</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="QU">
        <xs:annotation>
          <xs:documentation>Quaker</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RC">
        <xs:annotation>
          <xs:documentation>Roman Catholic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RF">
        <xs:annotation>
          <xs:documentation>Refused</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RU">
        <xs:annotation>
          <xs:documentation>Russian Orthodox</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SA">
        <xs:annotation>
          <xs:documentation>Salvation Army</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SD">
        <xs:annotation>
          <xs:documentation>Seventh Day Adventist</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SI">
        <xs:annotation>
          <xs:documentation>Sikh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UR">
        <xs:annotation>
          <xs:documentation>United Reform Church</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSchoolTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="01">
        <xs:annotation>
          <xs:documentation>First school, 5-8</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="02">
        <xs:annotation>
          <xs:documentation>First school, 5-9</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="03">
        <xs:annotation>
          <xs:documentation>First school, 5-10</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="04">
        <xs:annotation>
          <xs:documentation>First and Middle school, 5-12</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="05">
        <xs:annotation>
          <xs:documentation>Middle school, 8-12, deemed Primary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="06">
        <xs:annotation>
          <xs:documentation>Middle school, 9-13, deemed Primary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="07">
        <xs:annotation>
          <xs:documentation>Middle school, 9-13, deemed Secondary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="08">
        <xs:annotation>
          <xs:documentation>Middle school, 10-13, deemed Secondary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="09">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 12-15/16</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="10">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 12-18</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="11">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 13-16</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="12">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 13-18</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="16">
        <xs:annotation>
          <xs:documentation>Infant school, 5-7/8</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="17">
        <xs:annotation>
          <xs:documentation>Junior school, 7/8-11</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="18">
        <xs:annotation>
          <xs:documentation>Infant and Junior school, 5-11</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="21">
        <xs:annotation>
          <xs:documentation>Comprehensive all-through, 11-16</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="22">
        <xs:annotation>
          <xs:documentation>Comprehensive all-through, 11-18</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="25">
        <xs:annotation>
          <xs:documentation>Junior Comprehensive, 11-13, automatic transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="26">
        <xs:annotation>
          <xs:documentation>Junior Comprehensive, 11-14, automatic transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="27">
        <xs:annotation>
          <xs:documentation>Junior Comprehensive, 11-16, optional transfer at 13</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="28">
        <xs:annotation>
          <xs:documentation>Junior Comprehensive, 11-16, optional transfer at 14</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="29">
        <xs:annotation>
          <xs:documentation>Senior Comprehensive, 13-16, automatic transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="30">
        <xs:annotation>
          <xs:documentation>Senior Comprehensive, 13-18, optional transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="31">
        <xs:annotation>
          <xs:documentation>Senior Comprehensive, 13-18, automatic transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="32">
        <xs:annotation>
          <xs:documentation>Senior Comprehensive, 14-18, optional transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="33">
        <xs:annotation>
          <xs:documentation>Senior Comprehensive, 14-18, automatic transfer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="36">
        <xs:annotation>
          <xs:documentation>Non-Comprehensive Secondary - Modern</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="37">
        <xs:annotation>
          <xs:documentation>Non-Comprehensive Secondary - Grammar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="38">
        <xs:annotation>
          <xs:documentation>Non-Comprehensive Secondary - Technical</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="39">
        <xs:annotation>
          <xs:documentation>Non-Comprehensive Secondary - Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="41">
        <xs:annotation>
          <xs:documentation>Middle school, 10-14, deemed Secondary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="42">
        <xs:annotation>
          <xs:documentation>First school, 5-7;</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="43">
        <xs:annotation>
          <xs:documentation>First school, 7-10;</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="44">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 14/15-18</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="45">
        <xs:annotation>
          <xs:documentation>Middle school, 9-12, deemed Primary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="46">
        <xs:annotation>
          <xs:documentation>Comprehensive, Middle and Upper, 10-16</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="47">
        <xs:annotation>
          <xs:documentation>City Technology College</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="48">
        <xs:annotation>
          <xs:documentation>Comprehensive Upper school, 11-16</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="49">
        <xs:annotation>
          <xs:documentation>Academies</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="50">
        <xs:annotation>
          <xs:documentation>Maintained Nursery</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="51">
        <xs:annotation>
          <xs:documentation>Direct Grant Nursery</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSENProvisionType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="N">
        <xs:annotation>
          <xs:documentation>No Special Educational Need</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="A">
        <xs:annotation>
          <xs:documentation>School Action or Early Years Action</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>School Action Plus or Early Years Action Plus</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Statement</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSENTypeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="SPLD">
        <xs:annotation>
          <xs:documentation>Specific Learning Difficulty</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLD">
        <xs:annotation>
          <xs:documentation>Moderate Learning Difficulty</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLD">
        <xs:annotation>
          <xs:documentation>Severe Learning Difficulty</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PMLD">
        <xs:annotation>
          <xs:documentation>Profound and Multiple Learning Difficulty</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BESD">
        <xs:annotation>
          <xs:documentation>Behaviour, Emotional and Social Difficulties</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLCD">
        <xs:annotation>
          <xs:documentation>Speech, Language and Communication Difficulties (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLCN">
        <xs:annotation>
          <xs:documentation>Speech, Language and Communication Needs (England)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HI">
        <xs:annotation>
          <xs:documentation>Hearing Impairment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VI">
        <xs:annotation>
          <xs:documentation>Visual Impairment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MSI">
        <xs:annotation>
          <xs:documentation>Multi-Sensory Impairment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PD">
        <xs:annotation>
          <xs:documentation>Physical Disability (England)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PMED">
        <xs:annotation>
          <xs:documentation>Physical and Medical Difficulties (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASD">
        <xs:annotation>
          <xs:documentation>Autistic Spectrum Disorder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other Difficulty/Disability (England)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DNA">
        <xs:annotation>
          <xs:documentation>Does not apply (Wales)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSourceCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="C">
        <xs:annotation>
          <xs:documentation>Provided by the child (ie pupil)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="P">
        <xs:annotation>
          <xs:documentation>Provided by the parent</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="S">
        <xs:annotation>
          <xs:documentation>Ascribed by the current school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="T">
        <xs:annotation>
          <xs:documentation>Ascribed by a previous school</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="O">
        <xs:annotation>
          <xs:documentation>Other </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKSpecialisedResourcesWalesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="SR1">
        <xs:annotation>
          <xs:documentation>Periodic access to standard equipment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SR2">
        <xs:annotation>
          <xs:documentation>Individual access to normally available equipment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SR3">
        <xs:annotation>
          <xs:documentation>Individual access to specialised equipment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SR4">
        <xs:annotation>
          <xs:documentation>Dedicated access to highly specialised equipment</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTravellerGypsyCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="GH">
        <xs:annotation>
          <xs:documentation>Gypsy/Roma (Housed)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GT">
        <xs:annotation>
          <xs:documentation>Gypsy/Roma (Travelling)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Occupational Traveller</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TR">
        <xs:annotation>
          <xs:documentation>Traveller (Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NT">
        <xs:annotation>
          <xs:documentation>Not a Traveller</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTuitionCategoryType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="IL">
        <xs:annotation>
          <xs:documentation>Alternative Tuition by LA because of Illness</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PE">
        <xs:annotation>
          <xs:documentation>Alternative Tuition by LA because of Permanent Exclusion</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OR">
        <xs:annotation>
          <xs:documentation>Alternative Tuition by LA for Other Reason</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HP">
        <xs:annotation>
          <xs:documentation>Alternative Tuition at Home by Parents/Carers</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKTuitionHoursType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="A">
        <xs:annotation>
          <xs:documentation>5 hours or less</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="B">
        <xs:annotation>
          <xs:documentation>6-12 hours</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="C">
        <xs:annotation>
          <xs:documentation>13-19 hours</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="D">
        <xs:annotation>
          <xs:documentation>20 hours or more</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UKPupilExclusionReasonType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="PP">
        <xs:annotation>
          <xs:documentation>Physical assault against a pupil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PA">
        <xs:annotation>
          <xs:documentation>Physical assault against an adult</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VP">
        <xs:annotation>
          <xs:documentation>Verbal abuse/threatening behaviour against a pupil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VA">
        <xs:annotation>
          <xs:documentation>Verbal abuse/threatening behaviour against an adult</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BU">
        <xs:annotation>
          <xs:documentation>Bullying</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RA">
        <xs:annotation>
          <xs:documentation>Racist abuse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SM">
        <xs:annotation>
          <xs:documentation>Sexual misconduct</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DA">
        <xs:annotation>
          <xs:documentation>Drug and alcohol related</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DM">
        <xs:annotation>
          <xs:documentation>Damage</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TH">
        <xs:annotation>
          <xs:documentation>Theft</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DB">
        <xs:annotation>
          <xs:documentation>Persistent disruptive behaviour</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OT">
        <xs:annotation>
          <xs:documentation>Other</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetChurchOfEnglandDioceseType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BAT">
        <xs:annotation>
          <xs:documentation>Bath and Wells</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIR">
        <xs:annotation>
          <xs:documentation>Birmingham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BLA">
        <xs:annotation>
          <xs:documentation>Blackburn</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRA">
        <xs:annotation>
          <xs:documentation>Bradford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRI">
        <xs:annotation>
          <xs:documentation>Bristol</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAN">
        <xs:annotation>
          <xs:documentation>Canterbury</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAR">
        <xs:annotation>
          <xs:documentation>Carlisle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHE">
        <xs:annotation>
          <xs:documentation>Chelmsford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHS">
        <xs:annotation>
          <xs:documentation>Chester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHI">
        <xs:annotation>
          <xs:documentation>Chichester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COV">
        <xs:annotation>
          <xs:documentation>Coventry</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DER">
        <xs:annotation>
          <xs:documentation>Derby</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DUR">
        <xs:annotation>
          <xs:documentation>Durham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ELY">
        <xs:annotation>
          <xs:documentation>Ely</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EXE">
        <xs:annotation>
          <xs:documentation>Exeter</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GLO">
        <xs:annotation>
          <xs:documentation>Gloucester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUI">
        <xs:annotation>
          <xs:documentation>Guildford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HER">
        <xs:annotation>
          <xs:documentation>Hereford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LEI">
        <xs:annotation>
          <xs:documentation>Leicester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIC">
        <xs:annotation>
          <xs:documentation>Lichfield</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIN">
        <xs:annotation>
          <xs:documentation>Lincoln</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIV">
        <xs:annotation>
          <xs:documentation>Liverpool</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LON">
        <xs:annotation>
          <xs:documentation>London</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAN">
        <xs:annotation>
          <xs:documentation>Manchester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NEW">
        <xs:annotation>
          <xs:documentation>Newcastle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOR">
        <xs:annotation>
          <xs:documentation>Norwich</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OXF">
        <xs:annotation>
          <xs:documentation>Oxford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PET">
        <xs:annotation>
          <xs:documentation>Peterborough</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POR">
        <xs:annotation>
          <xs:documentation>Portsmouth</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RIP">
        <xs:annotation>
          <xs:documentation>Ripon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ROC">
        <xs:annotation>
          <xs:documentation>Rochester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STA">
        <xs:annotation>
          <xs:documentation>St Albans</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STE">
        <xs:annotation>
          <xs:documentation>St Edmundsbury and Ipswich</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SAL">
        <xs:annotation>
          <xs:documentation>Salisbury</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHE">
        <xs:annotation>
          <xs:documentation>Sheffield</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOD">
        <xs:annotation>
          <xs:documentation>Sodor and Man</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOU">
        <xs:annotation>
          <xs:documentation>Southwark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOW">
        <xs:annotation>
          <xs:documentation>Southwell</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRU">
        <xs:annotation>
          <xs:documentation>Truro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WAK">
        <xs:annotation>
          <xs:documentation>Wakefield</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WIN">
        <xs:annotation>
          <xs:documentation>Winchester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WOR">
        <xs:annotation>
          <xs:documentation>Worcester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YOR">
        <xs:annotation>
          <xs:documentation>York</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </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:annotation>
          <xs:documentation>Acholi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ADA">
        <xs:annotation>
          <xs:documentation>Adangme</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AFA">
        <xs:annotation>
          <xs:documentation>Afar-Saho</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AFK">
        <xs:annotation>
          <xs:documentation>Afrikaans</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AKA">
        <xs:annotation>
          <xs:documentation>Akan/Twi-Fante</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AKAF">
        <xs:annotation>
          <xs:documentation>Akan (Fante)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AKAT">
        <xs:annotation>
          <xs:documentation>Akan (Twi/Asante)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALB">
        <xs:annotation>
          <xs:documentation>Albanian/Shqip</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALU">
        <xs:annotation>
          <xs:documentation>Alur</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AMR">
        <xs:annotation>
          <xs:documentation>Amharic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARA">
        <xs:annotation>
          <xs:documentation>Arabic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAA">
        <xs:annotation>
          <xs:documentation>Arabic (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAG">
        <xs:annotation>
          <xs:documentation>Arabic (Algeria)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAI">
        <xs:annotation>
          <xs:documentation>Arabic (Iraq)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAM">
        <xs:annotation>
          <xs:documentation>Arabic (Morocco)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAS">
        <xs:annotation>
          <xs:documentation>Arabic (Sudan)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARAY">
        <xs:annotation>
          <xs:documentation>Arabic (Yemen)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARM">
        <xs:annotation>
          <xs:documentation>Armenian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASM">
        <xs:annotation>
          <xs:documentation>Assamese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASR">
        <xs:annotation>
          <xs:documentation>Assyrian/Aramaic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AYB">
        <xs:annotation>
          <xs:documentation>Anyi-Baule</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AYM">
        <xs:annotation>
          <xs:documentation>Aymara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AZE">
        <xs:annotation>
          <xs:documentation>Azeri</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BAI">
        <xs:annotation>
          <xs:documentation>Bamileke (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BAL">
        <xs:annotation>
          <xs:documentation>Balochi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEJ">
        <xs:annotation>
          <xs:documentation>Beja/Bedawi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEL">
        <xs:annotation>
          <xs:documentation>Belarusian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEM">
        <xs:annotation>
          <xs:documentation>Bemba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BHO">
        <xs:annotation>
          <xs:documentation>Bhojpuri</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIK">
        <xs:annotation>
          <xs:documentation>Bikol</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BLT">
        <xs:annotation>
          <xs:documentation>Balti Tibetan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BMA">
        <xs:annotation>
          <xs:documentation>Burmese/Myanma</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BNG">
        <xs:annotation>
          <xs:documentation>Bengali</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BNGA">
        <xs:annotation>
          <xs:documentation>Bengali (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BNGC">
        <xs:annotation>
          <xs:documentation>Bengali (Chittagong/Noakhali)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BNGS">
        <xs:annotation>
          <xs:documentation>Bengali (Sylheti)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BSL">
        <xs:annotation>
          <xs:documentation>British Sign Language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BSQ">
        <xs:annotation>
          <xs:documentation>Basque/Euskara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BUL">
        <xs:annotation>
          <xs:documentation>Bulgarian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAM">
        <xs:annotation>
          <xs:documentation>Cambodian/Khmer</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAT">
        <xs:annotation>
          <xs:documentation>Catalan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CCE">
        <xs:annotation>
          <xs:documentation>Caribbean Creole English</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CCF">
        <xs:annotation>
          <xs:documentation>Caribbean Creole French</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CGA">
        <xs:annotation>
          <xs:documentation>Chaga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CGR">
        <xs:annotation>
          <xs:documentation>Chattisgarhi/Khatahi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHE">
        <xs:annotation>
          <xs:documentation>Chechen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHI">
        <xs:annotation>
          <xs:documentation>Chinese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHIA">
        <xs:annotation>
          <xs:documentation>Chinese (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHIC">
        <xs:annotation>
          <xs:documentation>Chinese (Cantonese)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHIH">
        <xs:annotation>
          <xs:documentation>Chinese (Hokkien/Fujianese)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHIK">
        <xs:annotation>
          <xs:documentation>Chinese (Hakka)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHIM">
        <xs:annotation>
          <xs:documentation>Chinese (Mandarin/Putonghua)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CKW">
        <xs:annotation>
          <xs:documentation>Chokwe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CRN">
        <xs:annotation>
          <xs:documentation>Cornish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CTR">
        <xs:annotation>
          <xs:documentation>Chitrali/Khowar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CWA">
        <xs:annotation>
          <xs:documentation>Chichewa/Nyanja</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYM">
        <xs:annotation>
          <xs:documentation>Welsh/Cymraeg</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CZE">
        <xs:annotation>
          <xs:documentation>Czech</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DAN">
        <xs:annotation>
          <xs:documentation>Danish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DGA">
        <xs:annotation>
          <xs:documentation>Dagaare</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DGB">
        <xs:annotation>
          <xs:documentation>Dagbane</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DIN">
        <xs:annotation>
          <xs:documentation>Dinka/Jieng</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DUT">
        <xs:annotation>
          <xs:documentation>Dutch/Flemish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DZO">
        <xs:annotation>
          <xs:documentation>Dzongkha/Bhutanese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EBI">
        <xs:annotation>
          <xs:documentation>Ebira</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EDO">
        <xs:annotation>
          <xs:documentation>Edo/Bini</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EFI">
        <xs:annotation>
          <xs:documentation>Efik-Ibibio</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENB">
        <xs:annotation>
          <xs:documentation>Believed to be English*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ENG">
        <xs:annotation>
          <xs:documentation>English*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESA">
        <xs:annotation>
          <xs:documentation>Esan/Ishan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EST">
        <xs:annotation>
          <xs:documentation>Estonian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EWE">
        <xs:annotation>
          <xs:documentation>Ewe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EWO">
        <xs:annotation>
          <xs:documentation>Ewondo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FAN">
        <xs:annotation>
          <xs:documentation>Fang</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIJ">
        <xs:annotation>
          <xs:documentation>Fijian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIN">
        <xs:annotation>
          <xs:documentation>Finnish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FON">
        <xs:annotation>
          <xs:documentation>Fon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRN">
        <xs:annotation>
          <xs:documentation>French</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FUL">
        <xs:annotation>
          <xs:documentation>Fula/Fulfulde-Pulaar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAA">
        <xs:annotation>
          <xs:documentation>Ga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAE">
        <xs:annotation>
          <xs:documentation>Gaelic/Irish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAL">
        <xs:annotation>
          <xs:documentation>Gaelic (Scotland)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEO">
        <xs:annotation>
          <xs:documentation>Georgian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GER">
        <xs:annotation>
          <xs:documentation>German</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GGO">
        <xs:annotation>
          <xs:documentation>Gogo/Chigogo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GKY">
        <xs:annotation>
          <xs:documentation>Kikuyu/Gikuyu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GLG">
        <xs:annotation>
          <xs:documentation>Galician/Galego</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRE">
        <xs:annotation>
          <xs:documentation>Greek</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GREA">
        <xs:annotation>
          <xs:documentation>Greek (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GREC">
        <xs:annotation>
          <xs:documentation>Greek (Cyprus)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRN">
        <xs:annotation>
          <xs:documentation>Guarani</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUJ">
        <xs:annotation>
          <xs:documentation>Gujarati</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUN">
        <xs:annotation>
          <xs:documentation>Gurenne/Frafra</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUR">
        <xs:annotation>
          <xs:documentation>Gurma</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HAU">
        <xs:annotation>
          <xs:documentation>Hausa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HDK">
        <xs:annotation>
          <xs:documentation>Hindko</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEB">
        <xs:annotation>
          <xs:documentation>Hebrew</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HER">
        <xs:annotation>
          <xs:documentation>Herero</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HGR">
        <xs:annotation>
          <xs:documentation>Hungarian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HIN">
        <xs:annotation>
          <xs:documentation>Hindi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IBA">
        <xs:annotation>
          <xs:documentation>Iban</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IDM">
        <xs:annotation>
          <xs:documentation>Idoma</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IGA">
        <xs:annotation>
          <xs:documentation>Igala</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IGB">
        <xs:annotation>
          <xs:documentation>Igbo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IJO">
        <xs:annotation>
          <xs:documentation>Ijo (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ILO">
        <xs:annotation>
          <xs:documentation>Ilokano</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ISK">
        <xs:annotation>
          <xs:documentation>Itsekiri</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ISL">
        <xs:annotation>
          <xs:documentation>Icelandic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITA">
        <xs:annotation>
          <xs:documentation>Italian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITAA">
        <xs:annotation>
          <xs:documentation>Italian (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITAN">
        <xs:annotation>
          <xs:documentation>Italian (Napoletan)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITAS">
        <xs:annotation>
          <xs:documentation>Italian (Sicilian)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JAV">
        <xs:annotation>
          <xs:documentation>Javanese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JIN">
        <xs:annotation>
          <xs:documentation>Jinghpaw/Kachin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JPN">
        <xs:annotation>
          <xs:documentation>Japanese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAM">
        <xs:annotation>
          <xs:documentation>Kikamba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAN">
        <xs:annotation>
          <xs:documentation>Kannada</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAR">
        <xs:annotation>
          <xs:documentation>Karen (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAS">
        <xs:annotation>
          <xs:documentation>Kashmiri</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAU">
        <xs:annotation>
          <xs:documentation>Kanuri</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAZ">
        <xs:annotation>
          <xs:documentation>Kazakh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KCH">
        <xs:annotation>
          <xs:documentation>Katchi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KGZ">
        <xs:annotation>
          <xs:documentation>Kirghiz/Kyrgyz</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KHA">
        <xs:annotation>
          <xs:documentation>Khasi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KHY">
        <xs:annotation>
          <xs:documentation>Kihaya/Luziba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KIN">
        <xs:annotation>
          <xs:documentation>Kinyarwanda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KIR">
        <xs:annotation>
          <xs:documentation>Kirundi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KIS">
        <xs:annotation>
          <xs:documentation>Kisi (West Africa)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KLN">
        <xs:annotation>
          <xs:documentation>Kalenjin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KMB">
        <xs:annotation>
          <xs:documentation>Kimbundu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KME">
        <xs:annotation>
          <xs:documentation>Kimeru</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KNK">
        <xs:annotation>
          <xs:documentation>Konkani</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KNY">
        <xs:annotation>
          <xs:documentation>Kinyakyusa-Ngonde</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KON">
        <xs:annotation>
          <xs:documentation>Kikongo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KOR">
        <xs:annotation>
          <xs:documentation>Korean</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KPE">
        <xs:annotation>
          <xs:documentation>Kpelle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KRI">
        <xs:annotation>
          <xs:documentation>Krio</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KRU">
        <xs:annotation>
          <xs:documentation>Kru (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KSI">
        <xs:annotation>
          <xs:documentation>Kisii/Ekegusii (Kenya)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KSU">
        <xs:annotation>
          <xs:documentation>Kisukuma</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KUR">
        <xs:annotation>
          <xs:documentation>Kurdish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KURA">
        <xs:annotation>
          <xs:documentation>Kurdish (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KURM">
        <xs:annotation>
          <xs:documentation>Kurdish (Kurmanji)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KURS">
        <xs:annotation>
          <xs:documentation>Kurdish (Sorani)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAO">
        <xs:annotation>
          <xs:documentation>Lao</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBA">
        <xs:annotation>
          <xs:documentation>Luba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBAC">
        <xs:annotation>
          <xs:documentation>Luba (Chiluba/Tshiluba)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBAK">
        <xs:annotation>
          <xs:documentation>Luba (Kiluba)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LGA">
        <xs:annotation>
          <xs:documentation>Luganda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LGB">
        <xs:annotation>
          <xs:documentation>Lugbara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LGS">
        <xs:annotation>
          <xs:documentation>Lugisu/Lumasaba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIN">
        <xs:annotation>
          <xs:documentation>Lingala</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIT">
        <xs:annotation>
          <xs:documentation>Lithuanian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LNG">
        <xs:annotation>
          <xs:documentation>Lango (Uganda)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOZ">
        <xs:annotation>
          <xs:documentation>Lozi/Silozi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LSO">
        <xs:annotation>
          <xs:documentation>Lusoga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LTV">
        <xs:annotation>
          <xs:documentation>Latvian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LTZ">
        <xs:annotation>
          <xs:documentation>Luxemburgish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUE">
        <xs:annotation>
          <xs:documentation>Luvale/Luena</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUN">
        <xs:annotation>
          <xs:documentation>Lunda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUO">
        <xs:annotation>
          <xs:documentation>Luo (Kenya/Tanzania)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUY">
        <xs:annotation>
          <xs:documentation>Luhya (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAG">
        <xs:annotation>
          <xs:documentation>Magahi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAI">
        <xs:annotation>
          <xs:documentation>Maithili</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAK">
        <xs:annotation>
          <xs:documentation>Makua</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAN">
        <xs:annotation>
          <xs:documentation>Manding/Malinke</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MANA">
        <xs:annotation>
          <xs:documentation>Manding/Malinke (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MANB">
        <xs:annotation>
          <xs:documentation>Bambara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MANJ">
        <xs:annotation>
          <xs:documentation>Dyula/Jula</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAO">
        <xs:annotation>
          <xs:documentation>Maori</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAR">
        <xs:annotation>
          <xs:documentation>Marathi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAS">
        <xs:annotation>
          <xs:documentation>Maasai</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MDV">
        <xs:annotation>
          <xs:documentation>Maldivian/Dhivehi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MEN">
        <xs:annotation>
          <xs:documentation>Mende</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MKD">
        <xs:annotation>
          <xs:documentation>Macedonian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLG">
        <xs:annotation>
          <xs:documentation>Malagasy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLM">
        <xs:annotation>
          <xs:documentation>Malayalam</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLT">
        <xs:annotation>
          <xs:documentation>Maltese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLY">
        <xs:annotation>
          <xs:documentation>Malay/Indonesian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLYA">
        <xs:annotation>
          <xs:documentation>Malay (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLYI">
        <xs:annotation>
          <xs:documentation>Indonesian/Bahasa Indonesia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNA">
        <xs:annotation>
          <xs:documentation>Magindanao-Maranao</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNG">
        <xs:annotation>
          <xs:documentation>Mongolian (Khalkha)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNX">
        <xs:annotation>
          <xs:documentation>Manx Gaelic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MOR">
        <xs:annotation>
          <xs:documentation>Moore/Mossi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MSC">
        <xs:annotation>
          <xs:documentation>Mauritian/Seychelles Creole</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUN">
        <xs:annotation>
          <xs:documentation>Munda (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MYA">
        <xs:annotation>
          <xs:documentation>Maya (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NAH">
        <xs:annotation>
          <xs:documentation>Nahuatl/Mexicano</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NAM">
        <xs:annotation>
          <xs:documentation>Nama/Damara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NBN">
        <xs:annotation>
          <xs:documentation>Nubian (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NDB">
        <xs:annotation>
          <xs:documentation>Ndebele</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NDBS">
        <xs:annotation>
          <xs:documentation>Ndebele (South Africa)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NDBZ">
        <xs:annotation>
          <xs:documentation>Ndebele (Zimbabwe)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NEP">
        <xs:annotation>
          <xs:documentation>Nepali</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOR">
        <xs:annotation>
          <xs:documentation>Norwegian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOT">
        <xs:annotation>
          <xs:documentation>Information not obtained*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NUE">
        <xs:annotation>
          <xs:documentation>Nuer/Naadh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NUP">
        <xs:annotation>
          <xs:documentation>Nupe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NWA">
        <xs:annotation>
          <xs:documentation>Newari</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NZM">
        <xs:annotation>
          <xs:documentation>Nzema</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OAM">
        <xs:annotation>
          <xs:documentation>Ambo/Oshiwambo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OAMK">
        <xs:annotation>
          <xs:documentation>Ambo (Kwanyama)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OAMN">
        <xs:annotation>
          <xs:documentation>Ambo (Ndonga)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OGN">
        <xs:annotation>
          <xs:documentation>Ogoni (Any)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ORI">
        <xs:annotation>
          <xs:documentation>Oriya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ORM">
        <xs:annotation>
          <xs:documentation>Oromo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTB">
        <xs:annotation>
          <xs:documentation>Believed to be Other than English*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTH">
        <xs:annotation>
          <xs:documentation>Other than English*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OTL">
        <xs:annotation>
          <xs:documentation>Other Language</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAG">
        <xs:annotation>
          <xs:documentation>Pangasinan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAM">
        <xs:annotation>
          <xs:documentation>Pampangan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAT">
        <xs:annotation>
          <xs:documentation>Pashto/Pakhto</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHA">
        <xs:annotation>
          <xs:documentation>Pahari/Himachali (India)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHR">
        <xs:annotation>
          <xs:documentation>Pahari (Pakistan)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNJ">
        <xs:annotation>
          <xs:documentation>Panjabi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNJA">
        <xs:annotation>
          <xs:documentation>Panjabi (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNJG">
        <xs:annotation>
          <xs:documentation>Panjabi (Gurmukhi)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNJM">
        <xs:annotation>
          <xs:documentation>Panjabi (Mirpuri)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNJP">
        <xs:annotation>
          <xs:documentation>Panjabi (Pothwari)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POL">
        <xs:annotation>
          <xs:documentation>Polish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POR">
        <xs:annotation>
          <xs:documentation>Portuguese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PORA">
        <xs:annotation>
          <xs:documentation>Portuguese (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PORB">
        <xs:annotation>
          <xs:documentation>Portuguese (Brazil)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRS">
        <xs:annotation>
          <xs:documentation>Persian/Farsi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRSA">
        <xs:annotation>
          <xs:documentation>Farsi/Persian (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRSD">
        <xs:annotation>
          <xs:documentation>Dari Persian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRST">
        <xs:annotation>
          <xs:documentation>Tajiki Persian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="QUE">
        <xs:annotation>
          <xs:documentation>Quechua</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RAJ">
        <xs:annotation>
          <xs:documentation>Rajasthani/Marwari</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="REF">
        <xs:annotation>
          <xs:documentation>Refused*</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RME">
        <xs:annotation>
          <xs:documentation>Romany/English Romanes</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RMI">
        <xs:annotation>
          <xs:documentation>Romani (International)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RMN">
        <xs:annotation>
          <xs:documentation>Romanian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RMNM">
        <xs:annotation>
          <xs:documentation>Romanian (Moldova)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RMNR">
        <xs:annotation>
          <xs:documentation>Romanian (Romania)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RMS">
        <xs:annotation>
          <xs:documentation>Romansch</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RNY">
        <xs:annotation>
          <xs:documentation>Runyakitara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RNYN">
        <xs:annotation>
          <xs:documentation>Runyankore-Ruchiga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RNYO">
        <xs:annotation>
          <xs:documentation>Runyoro-Rutooro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RUS">
        <xs:annotation>
          <xs:documentation>Russian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SAM">
        <xs:annotation>
          <xs:documentation>Samoan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCB">
        <xs:annotation>
          <xs:documentation>Serbian/Croatian/Bosnian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCBB">
        <xs:annotation>
          <xs:documentation>Bosnian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCBC">
        <xs:annotation>
          <xs:documentation>Croatian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCBS">
        <xs:annotation>
          <xs:documentation>Serbian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCO">
        <xs:annotation>
          <xs:documentation>Scots</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHL">
        <xs:annotation>
          <xs:documentation>Shilluk/Cholo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHO">
        <xs:annotation>
          <xs:documentation>Shona</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SID">
        <xs:annotation>
          <xs:documentation>Sidamo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SIO">
        <xs:annotation>
          <xs:documentation>Sign Language (Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLO">
        <xs:annotation>
          <xs:documentation>Slovak</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLV">
        <xs:annotation>
          <xs:documentation>Slovenian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SND">
        <xs:annotation>
          <xs:documentation>Sindhi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SNG">
        <xs:annotation>
          <xs:documentation>Sango</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SNH">
        <xs:annotation>
          <xs:documentation>Sinhala</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOM">
        <xs:annotation>
          <xs:documentation>Somali</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SPA">
        <xs:annotation>
          <xs:documentation>Spanish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SRD">
        <xs:annotation>
          <xs:documentation>Sardinian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SRK">
        <xs:annotation>
          <xs:documentation>Siraiki</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSO">
        <xs:annotation>
          <xs:documentation>Sotho/Sesotho</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSOO">
        <xs:annotation>
          <xs:documentation>Sotho/Sesotho (Southern)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSOT">
        <xs:annotation>
          <xs:documentation>Sotho/Sesotho (Northern)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SSW">
        <xs:annotation>
          <xs:documentation>Swazi/Siswati</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STS">
        <xs:annotation>
          <xs:documentation>Tswana/Setswana</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUN">
        <xs:annotation>
          <xs:documentation>Sundanese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWA">
        <xs:annotation>
          <xs:documentation>Swahili/Kiswahili</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWAA">
        <xs:annotation>
          <xs:documentation>Swahili (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWAC">
        <xs:annotation>
          <xs:documentation>Comorian Swahili</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWAK">
        <xs:annotation>
          <xs:documentation>Swahili (Kingwana)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWAM">
        <xs:annotation>
          <xs:documentation>Swahili (Brava/Mwiini)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWAT">
        <xs:annotation>
          <xs:documentation>Swahili (Bajuni/Tikuu)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWE">
        <xs:annotation>
          <xs:documentation>Swedish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TAM">
        <xs:annotation>
          <xs:documentation>Tamil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TEL">
        <xs:annotation>
          <xs:documentation>Telugu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TEM">
        <xs:annotation>
          <xs:documentation>Temne</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TES">
        <xs:annotation>
          <xs:documentation>Teso/Ateso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGE">
        <xs:annotation>
          <xs:documentation>Tigre</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGL">
        <xs:annotation>
          <xs:documentation>Tagalog/Filipino</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGLF">
        <xs:annotation>
          <xs:documentation>Filipino</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGLG">
        <xs:annotation>
          <xs:documentation>Tagalog</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGR">
        <xs:annotation>
          <xs:documentation>Tigrinya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="THA">
        <xs:annotation>
          <xs:documentation>Thai</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TIB">
        <xs:annotation>
          <xs:documentation>Tibetan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TIV">
        <xs:annotation>
          <xs:documentation>Tiv</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMZ">
        <xs:annotation>
          <xs:documentation>Berber/Tamazight</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMZA">
        <xs:annotation>
          <xs:documentation>Berber/Tamazight (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMZK">
        <xs:annotation>
          <xs:documentation>Berber/Tamazight (Kabyle)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMZT">
        <xs:annotation>
          <xs:documentation>Berber (Tamashek)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TNG">
        <xs:annotation>
          <xs:documentation>Tonga/Chitonga (Zambia)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TON">
        <xs:annotation>
          <xs:documentation>Tongan (Oceania)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TPI">
        <xs:annotation>
          <xs:documentation>Tok Pisin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRI">
        <xs:annotation>
          <xs:documentation>Traveller Irish/Shelta</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TSO">
        <xs:annotation>
          <xs:documentation>Tsonga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUK">
        <xs:annotation>
          <xs:documentation>Turkmen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUL">
        <xs:annotation>
          <xs:documentation>Tulu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUM">
        <xs:annotation>
          <xs:documentation>Tumbuka</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUR">
        <xs:annotation>
          <xs:documentation>Turkish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UKR">
        <xs:annotation>
          <xs:documentation>Ukrainian</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UMB">
        <xs:annotation>
          <xs:documentation>Umbundu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="URD">
        <xs:annotation>
          <xs:documentation>Urdu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="URH">
        <xs:annotation>
          <xs:documentation>Urhobo-Isoko</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UYG">
        <xs:annotation>
          <xs:documentation>Uyghur</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UZB">
        <xs:annotation>
          <xs:documentation>Uzbek</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VEN">
        <xs:annotation>
          <xs:documentation>Venda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VIE">
        <xs:annotation>
          <xs:documentation>Vietnamese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VSY">
        <xs:annotation>
          <xs:documentation>Visayan/Bisaya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VSYA">
        <xs:annotation>
          <xs:documentation>Visayan/Bisaya (Any Other)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VSYH">
        <xs:annotation>
          <xs:documentation>Hiligaynon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VSYS">
        <xs:annotation>
          <xs:documentation>Cebuano/Sugbuanon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VSYW">
        <xs:annotation>
          <xs:documentation>Waray/Binisaya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WAP">
        <xs:annotation>
          <xs:documentation>Wa-Paraok (South-East Asia)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WCP">
        <xs:annotation>
          <xs:documentation>West-African Creole Portuguese</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WOL">
        <xs:annotation>
          <xs:documentation>Wolof</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WPE">
        <xs:annotation>
          <xs:documentation>West-African Pidgin English</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XHO">
        <xs:annotation>
          <xs:documentation>Xhosa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YAO">
        <xs:annotation>
          <xs:documentation>Yao/Chiyao (East Africa)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YDI">
        <xs:annotation>
          <xs:documentation>Yiddish</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YOR">
        <xs:annotation>
          <xs:documentation>Yoruba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZND">
        <xs:annotation>
          <xs:documentation>Zande</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZUL">
        <xs:annotation>
          <xs:documentation>Zulu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZZZ">
        <xs:annotation>
          <xs:documentation>Classification Pending</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetLearningAndSkillsCouncilAreaCodeType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="BAL">
        <xs:annotation>
          <xs:documentation>Bedfordshire and Luton</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BER">
        <xs:annotation>
          <xs:documentation>Berkshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIS">
        <xs:annotation>
          <xs:documentation>Birmingham and Solihull</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BDP">
        <xs:annotation>
          <xs:documentation>Bournemouth, Dorset and Poole</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAM">
        <xs:annotation>
          <xs:documentation>Cambridgeshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHW">
        <xs:annotation>
          <xs:documentation>Cheshire and Warrington</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CDU">
        <xs:annotation>
          <xs:documentation>County Durham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COW">
        <xs:annotation>
          <xs:documentation>Coventry and Warwickshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CUM">
        <xs:annotation>
          <xs:documentation>Cumbria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DER">
        <xs:annotation>
          <xs:documentation>Derbyshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DEC">
        <xs:annotation>
          <xs:documentation>Devon and Cornwall</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESS">
        <xs:annotation>
          <xs:documentation>Essex</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GLO">
        <xs:annotation>
          <xs:documentation>Gloucestershire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GMA">
        <xs:annotation>
          <xs:documentation>Greater Manchester</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GME">
        <xs:annotation>
          <xs:documentation>Greater Merseyside</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HIW">
        <xs:annotation>
          <xs:documentation>Hampshire and Isle of Wight</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HEW">
        <xs:annotation>
          <xs:documentation>Herefordshire and Worcestershire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HER">
        <xs:annotation>
          <xs:documentation>Hertfordshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HUM">
        <xs:annotation>
          <xs:documentation>Humberside</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KEM">
        <xs:annotation>
          <xs:documentation>Kent and Medway</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAN">
        <xs:annotation>
          <xs:documentation>Lancashire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LEI">
        <xs:annotation>
          <xs:documentation>Leicestershire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIR">
        <xs:annotation>
          <xs:documentation>Lincolnshire and Rutland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOC">
        <xs:annotation>
          <xs:documentation>London - Central</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOE">
        <xs:annotation>
          <xs:documentation>London - East</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LON">
        <xs:annotation>
          <xs:documentation>London - North</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOS">
        <xs:annotation>
          <xs:documentation>London - South</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LOW">
        <xs:annotation>
          <xs:documentation>London - West</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LSC">
        <xs:annotation>
          <xs:documentation>National LSC (NCS)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MOB">
        <xs:annotation>
          <xs:documentation>Milton Keynes, Oxfordshire and Buckinghamshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOR">
        <xs:annotation>
          <xs:documentation>Norfolk</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOY">
        <xs:annotation>
          <xs:documentation>North Yorkshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOA">
        <xs:annotation>
          <xs:documentation>Northamptonshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOU">
        <xs:annotation>
          <xs:documentation>Northumberland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOT">
        <xs:annotation>
          <xs:documentation>Nottinghamshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHR">
        <xs:annotation>
          <xs:documentation>Shropshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOM">
        <xs:annotation>
          <xs:documentation>Somerset</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOY">
        <xs:annotation>
          <xs:documentation>South Yorkshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STA">
        <xs:annotation>
          <xs:documentation>Staffordshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUF">
        <xs:annotation>
          <xs:documentation>Suffolk</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUR">
        <xs:annotation>
          <xs:documentation>Surrey</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUS">
        <xs:annotation>
          <xs:documentation>Sussex</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TEV">
        <xs:annotation>
          <xs:documentation>Tees Valley</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TBC">
        <xs:annotation>
          <xs:documentation>The Black Country</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TYW">
        <xs:annotation>
          <xs:documentation>Tyne and Wear</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WEE">
        <xs:annotation>
          <xs:documentation>West of England</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WEY">
        <xs:annotation>
          <xs:documentation>West Yorkshire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WIS">
        <xs:annotation>
          <xs:documentation>Wiltshire and Swindon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetNationStatesAndCountriesType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AFG">
        <xs:annotation>
          <xs:documentation>Afghanistan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALA">
        <xs:annotation>
          <xs:documentation>Aland Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALB">
        <xs:annotation>
          <xs:documentation>Albania</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DZA">
        <xs:annotation>
          <xs:documentation>Algeria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ASM">
        <xs:annotation>
          <xs:documentation>American Samoa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AND">
        <xs:annotation>
          <xs:documentation>Andorra</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AGO">
        <xs:annotation>
          <xs:documentation>Angola</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AIA">
        <xs:annotation>
          <xs:documentation>Anguilla</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATA">
        <xs:annotation>
          <xs:documentation>Antarctica</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATG">
        <xs:annotation>
          <xs:documentation>Antigua and Barbuda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARG">
        <xs:annotation>
          <xs:documentation>Argentina</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARM">
        <xs:annotation>
          <xs:documentation>Armenia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ABW">
        <xs:annotation>
          <xs:documentation>Aruba</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AUS">
        <xs:annotation>
          <xs:documentation>Australia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AUT">
        <xs:annotation>
          <xs:documentation>Austria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AZE">
        <xs:annotation>
          <xs:documentation>Azerbaijan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BHS">
        <xs:annotation>
          <xs:documentation>Bahamas</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BHR">
        <xs:annotation>
          <xs:documentation>Bahrain</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BGD">
        <xs:annotation>
          <xs:documentation>Bangladesh</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRB">
        <xs:annotation>
          <xs:documentation>Barbados</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BLR">
        <xs:annotation>
          <xs:documentation>Belarus</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEL">
        <xs:annotation>
          <xs:documentation>Belgium</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BLZ">
        <xs:annotation>
          <xs:documentation>Belize</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BEN">
        <xs:annotation>
          <xs:documentation>Benin</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BMU">
        <xs:annotation>
          <xs:documentation>Bermuda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BTN">
        <xs:annotation>
          <xs:documentation>Bhutan </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BOL">
        <xs:annotation>
          <xs:documentation>Bolivia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIH">
        <xs:annotation>
          <xs:documentation>Bosnia and Herzegovina</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BWA">
        <xs:annotation>
          <xs:documentation>Botswana</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BVT">
        <xs:annotation>
          <xs:documentation>Bouvet Island</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRA">
        <xs:annotation>
          <xs:documentation>Brazil</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATB">
        <xs:annotation>
          <xs:documentation>British Antarctic Territory</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IOT">
        <xs:annotation>
          <xs:documentation>British Indian Ocean Territory</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRN">
        <xs:annotation>
          <xs:documentation>Brunei</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BGR">
        <xs:annotation>
          <xs:documentation>Bulgaria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BFA">
        <xs:annotation>
          <xs:documentation>Burkina Faso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BUR">
        <xs:annotation>
          <xs:documentation>Burma</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BDI">
        <xs:annotation>
          <xs:documentation>Burundi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BYS">
        <xs:annotation>
          <xs:documentation>Byelorussian SSR</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KHM">
        <xs:annotation>
          <xs:documentation>Cambodia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CMR">
        <xs:annotation>
          <xs:documentation>Cameroon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAN">
        <xs:annotation>
          <xs:documentation>Canada</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CTE">
        <xs:annotation>
          <xs:documentation>Canton and Enderbury Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CPV">
        <xs:annotation>
          <xs:documentation>Cape Verde</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYM">
        <xs:annotation>
          <xs:documentation>Cayman Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAF">
        <xs:annotation>
          <xs:documentation>Central African Republic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TCD">
        <xs:annotation>
          <xs:documentation>Chad</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHL">
        <xs:annotation>
          <xs:documentation>Chile</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHN">
        <xs:annotation>
          <xs:documentation>China</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CXR">
        <xs:annotation>
          <xs:documentation>Christmas Island</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CCK">
        <xs:annotation>
          <xs:documentation>Cocos (Keeling) Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COL">
        <xs:annotation>
          <xs:documentation>Colombia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COM">
        <xs:annotation>
          <xs:documentation>Comoros</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COG">
        <xs:annotation>
          <xs:documentation>Congo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COD">
        <xs:annotation>
          <xs:documentation>Congo, Democratic Republic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COK">
        <xs:annotation>
          <xs:documentation>Cook Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CRI">
        <xs:annotation>
          <xs:documentation>Costa Rica</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HRV">
        <xs:annotation>
          <xs:documentation>Croatia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CUB">
        <xs:annotation>
          <xs:documentation>Cuba </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYP">
        <xs:annotation>
          <xs:documentation>Cyprus</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CZE">
        <xs:annotation>
          <xs:documentation>Czech Republic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CSK">
        <xs:annotation>
          <xs:documentation>Czechoslovakia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DHY">
        <xs:annotation>
          <xs:documentation>Dahomey</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YMD">
        <xs:annotation>
          <xs:documentation>Democratic Yemen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DNK">
        <xs:annotation>
          <xs:documentation>Denmark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DJI">
        <xs:annotation>
          <xs:documentation>Djibouti</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DMA">
        <xs:annotation>
          <xs:documentation>Dominica</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DOM">
        <xs:annotation>
          <xs:documentation>Dominican Republic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATN">
        <xs:annotation>
          <xs:documentation>Dronning Maud Land</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMP">
        <xs:annotation>
          <xs:documentation>East Timor</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ECU">
        <xs:annotation>
          <xs:documentation>Ecuador</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EGY">
        <xs:annotation>
          <xs:documentation>Egypt</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLV">
        <xs:annotation>
          <xs:documentation>El Salvador</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GNQ">
        <xs:annotation>
          <xs:documentation>Equatorial Guinea</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ERI">
        <xs:annotation>
          <xs:documentation>Eritrea</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EST">
        <xs:annotation>
          <xs:documentation>Estonia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ETH">
        <xs:annotation>
          <xs:documentation>Ethiopia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ETH">
        <xs:annotation>
          <xs:documentation>Ethiopia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FLK">
        <xs:annotation>
          <xs:documentation>Falkland Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRO">
        <xs:annotation>
          <xs:documentation>Faroe Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DEU">
        <xs:annotation>
          <xs:documentation>Federal Republic of Germany</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FJI">
        <xs:annotation>
          <xs:documentation>Fiji</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIN">
        <xs:annotation>
          <xs:documentation>Finland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FIN">
        <xs:annotation>
          <xs:documentation>Finland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FRA">
        <xs:annotation>
          <xs:documentation>France</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUF">
        <xs:annotation>
          <xs:documentation>French Guiana</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PYF">
        <xs:annotation>
          <xs:documentation>French Polynesia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ATF">
        <xs:annotation>
          <xs:documentation>French Southern Territories</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AFI">
        <xs:annotation>
          <xs:documentation>French Territory of Afars and Issas</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GAB">
        <xs:annotation>
          <xs:documentation>Gabon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GMB">
        <xs:annotation>
          <xs:documentation>Gambia, The</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEO">
        <xs:annotation>
          <xs:documentation>Georgia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DDR">
        <xs:annotation>
          <xs:documentation>German Democratic Republic</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DEU">
        <xs:annotation>
          <xs:documentation>Germany</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GHA">
        <xs:annotation>
          <xs:documentation>Ghana</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GIB">
        <xs:annotation>
          <xs:documentation>Gibraltar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEL">
        <xs:annotation>
          <xs:documentation>Gilbert and Ellice Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEL">
        <xs:annotation>
          <xs:documentation>Gilbert Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRC">
        <xs:annotation>
          <xs:documentation>Greece</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRL">
        <xs:annotation>
          <xs:documentation>Greenland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GRD">
        <xs:annotation>
          <xs:documentation>Grenada</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GLP">
        <xs:annotation>
          <xs:documentation>Guadeloupe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUM">
        <xs:annotation>
          <xs:documentation>Guam</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GTM">
        <xs:annotation>
          <xs:documentation>Guatemala</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GGY">
        <xs:annotation>
          <xs:documentation>Guernsey</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GIN">
        <xs:annotation>
          <xs:documentation>Guinea</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GNB">
        <xs:annotation>
          <xs:documentation>Guinea-Bissau</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GUY">
        <xs:annotation>
          <xs:documentation>Guyana</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HTI">
        <xs:annotation>
          <xs:documentation>Haiti</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HMD">
        <xs:annotation>
          <xs:documentation>Heard Island and McDonald Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VAT">
        <xs:annotation>
          <xs:documentation>Holy See</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HND">
        <xs:annotation>
          <xs:documentation>Honduras</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HKG">
        <xs:annotation>
          <xs:documentation>Hong Kong</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HUN">
        <xs:annotation>
          <xs:documentation>Hungary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ISL">
        <xs:annotation>
          <xs:documentation>Iceland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IND">
        <xs:annotation>
          <xs:documentation>India</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IDN">
        <xs:annotation>
          <xs:documentation>Indonesia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IRN">
        <xs:annotation>
          <xs:documentation>Iran </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IRQ">
        <xs:annotation>
          <xs:documentation>Iraq </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IRL">
        <xs:annotation>
          <xs:documentation>Ireland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IMN">
        <xs:annotation>
          <xs:documentation>Isle of Man</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ISR">
        <xs:annotation>
          <xs:documentation>Israel</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ITA">
        <xs:annotation>
          <xs:documentation>Italy</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CIV">
        <xs:annotation>
          <xs:documentation>Ivory Coast</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JAM">
        <xs:annotation>
          <xs:documentation>Jamaica</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JPN">
        <xs:annotation>
          <xs:documentation>Japan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JEY">
        <xs:annotation>
          <xs:documentation>Jersey</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JTN">
        <xs:annotation>
          <xs:documentation>Johnston Atoll</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JOR">
        <xs:annotation>
          <xs:documentation>Jordan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KHM">
        <xs:annotation>
          <xs:documentation>Kampuchea</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KAZ">
        <xs:annotation>
          <xs:documentation>Kazakhstan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KEN">
        <xs:annotation>
          <xs:documentation>Kenya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KIR">
        <xs:annotation>
          <xs:documentation>Kiribati</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRK">
        <xs:annotation>
          <xs:documentation>Korea, North </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KOR">
        <xs:annotation>
          <xs:documentation>Korea, South</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KWT">
        <xs:annotation>
          <xs:documentation>Kuwait</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KGZ">
        <xs:annotation>
          <xs:documentation>Kyrgyzstan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAO">
        <xs:annotation>
          <xs:documentation>Laos</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LVA">
        <xs:annotation>
          <xs:documentation>Latvia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBN">
        <xs:annotation>
          <xs:documentation>Lebanon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LSO">
        <xs:annotation>
          <xs:documentation>Lesotho</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBR">
        <xs:annotation>
          <xs:documentation>Liberia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBY">
        <xs:annotation>
          <xs:documentation>Libya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIE">
        <xs:annotation>
          <xs:documentation>Liechtenstein</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LTU">
        <xs:annotation>
          <xs:documentation>Lithuania</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LUX">
        <xs:annotation>
          <xs:documentation>Luxembourg</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAC">
        <xs:annotation>
          <xs:documentation>Macao</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MKD">
        <xs:annotation>
          <xs:documentation>Macedonia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MDG">
        <xs:annotation>
          <xs:documentation>Madagascar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MWI">
        <xs:annotation>
          <xs:documentation>Malawi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MYS">
        <xs:annotation>
          <xs:documentation>Malaysia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MDV">
        <xs:annotation>
          <xs:documentation>Maldives</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLI">
        <xs:annotation>
          <xs:documentation>Mali</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MLT">
        <xs:annotation>
          <xs:documentation>Malta</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MHL">
        <xs:annotation>
          <xs:documentation>Marshall Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MTQ">
        <xs:annotation>
          <xs:documentation>Martinique</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MRT">
        <xs:annotation>
          <xs:documentation>Mauritania</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUS">
        <xs:annotation>
          <xs:documentation>Mauritius</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MYT">
        <xs:annotation>
          <xs:documentation>Mayotte</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MEX">
        <xs:annotation>
          <xs:documentation>Mexico</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FSM">
        <xs:annotation>
          <xs:documentation>Micronesia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MID">
        <xs:annotation>
          <xs:documentation>Midway Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MDA">
        <xs:annotation>
          <xs:documentation>Moldova</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MCO">
        <xs:annotation>
          <xs:documentation>Monaco</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNG">
        <xs:annotation>
          <xs:documentation>Mongolia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNE">
        <xs:annotation>
          <xs:documentation>Montenegro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MSR">
        <xs:annotation>
          <xs:documentation>Montserrat</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAR">
        <xs:annotation>
          <xs:documentation>Morocco</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MOZ">
        <xs:annotation>
          <xs:documentation>Mozambique</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MMR">
        <xs:annotation>
          <xs:documentation>Myanmar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NAM">
        <xs:annotation>
          <xs:documentation>Namibia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NRU">
        <xs:annotation>
          <xs:documentation>Nauru</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NPL">
        <xs:annotation>
          <xs:documentation>Nepal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NLD">
        <xs:annotation>
          <xs:documentation>Netherlands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ANT">
        <xs:annotation>
          <xs:documentation>Netherlands Antilles</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ANT">
        <xs:annotation>
          <xs:documentation>Netherlands Antilles</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NCL">
        <xs:annotation>
          <xs:documentation>New Caledonia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NHB">
        <xs:annotation>
          <xs:documentation>New Hebrides</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NZL">
        <xs:annotation>
          <xs:documentation>New Zealand</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NIC">
        <xs:annotation>
          <xs:documentation>Nicaragua</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NER">
        <xs:annotation>
          <xs:documentation>Niger</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NGA">
        <xs:annotation>
          <xs:documentation>Nigeria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NIU">
        <xs:annotation>
          <xs:documentation>Niue</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NFK">
        <xs:annotation>
          <xs:documentation>Norfolk Island</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNP">
        <xs:annotation>
          <xs:documentation>Northern Mariana Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOR">
        <xs:annotation>
          <xs:documentation>Norway</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OMN">
        <xs:annotation>
          <xs:documentation>Oman</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAK">
        <xs:annotation>
          <xs:documentation>Pakistan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PLW">
        <xs:annotation>
          <xs:documentation>Palau</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PSE">
        <xs:annotation>
          <xs:documentation>Palestine</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAN">
        <xs:annotation>
          <xs:documentation>Panama</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PCZ">
        <xs:annotation>
          <xs:documentation>Panama Canal Zone</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PNG">
        <xs:annotation>
          <xs:documentation>Papua New Guinea</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRY">
        <xs:annotation>
          <xs:documentation>Paraguay</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PER">
        <xs:annotation>
          <xs:documentation>Peru</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHL">
        <xs:annotation>
          <xs:documentation>Philippines</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PCN">
        <xs:annotation>
          <xs:documentation>Pitcairn</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POL">
        <xs:annotation>
          <xs:documentation>Poland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRT">
        <xs:annotation>
          <xs:documentation>Portugal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PRI">
        <xs:annotation>
          <xs:documentation>Puerto Rico</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="QAT">
        <xs:annotation>
          <xs:documentation>Qatar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="REU">
        <xs:annotation>
          <xs:documentation>Reunion</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ROU">
        <xs:annotation>
          <xs:documentation>Romania</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RUS">
        <xs:annotation>
          <xs:documentation>Russia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RWA">
        <xs:annotation>
          <xs:documentation>Rwanda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHN">
        <xs:annotation>
          <xs:documentation>Saint Helena</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KNA">
        <xs:annotation>
          <xs:documentation>Saint Kitts and Nevis</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KNA">
        <xs:annotation>
          <xs:documentation>Saint Kitts-Nevis-Anguilla</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LCA">
        <xs:annotation>
          <xs:documentation>Saint Lucia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SPM">
        <xs:annotation>
          <xs:documentation>Saint Pierre and Miquelon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VCT">
        <xs:annotation>
          <xs:documentation>Saint Vincent and the Grenadines</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WSM">
        <xs:annotation>
          <xs:documentation>Samoa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SMR">
        <xs:annotation>
          <xs:documentation>San Marino</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STP">
        <xs:annotation>
          <xs:documentation>Sao Tome and Principe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SAU">
        <xs:annotation>
          <xs:documentation>Saudi Arabia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEN">
        <xs:annotation>
          <xs:documentation>Senegal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SRB">
        <xs:annotation>
          <xs:documentation>Serbia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCG">
        <xs:annotation>
          <xs:documentation>Serbia and Montenegro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SYC">
        <xs:annotation>
          <xs:documentation>Seychelles</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLE">
        <xs:annotation>
          <xs:documentation>Sierra Leone</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SKM">
        <xs:annotation>
          <xs:documentation>Sikkim</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SGP">
        <xs:annotation>
          <xs:documentation>Singapore</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SVK">
        <xs:annotation>
          <xs:documentation>Slovakia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SVN">
        <xs:annotation>
          <xs:documentation>Slovenia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLB">
        <xs:annotation>
          <xs:documentation>Solomon Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOM">
        <xs:annotation>
          <xs:documentation>Somalia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZAF">
        <xs:annotation>
          <xs:documentation>South Africa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SGS">
        <xs:annotation>
          <xs:documentation>South Georgia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VDR">
        <xs:annotation>
          <xs:documentation>South Vietnam</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RHO">
        <xs:annotation>
          <xs:documentation>Southern Rhodesia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESP">
        <xs:annotation>
          <xs:documentation>Spain</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESH">
        <xs:annotation>
          <xs:documentation>Spanish Sahara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LKA">
        <xs:annotation>
          <xs:documentation>Sri Lanka</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SDN">
        <xs:annotation>
          <xs:documentation>Sudan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUR">
        <xs:annotation>
          <xs:documentation>Suriname</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SJM">
        <xs:annotation>
          <xs:documentation>Svalbard and Jan Mayen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWZ">
        <xs:annotation>
          <xs:documentation>Swaziland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SWE">
        <xs:annotation>
          <xs:documentation>Sweden</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHE">
        <xs:annotation>
          <xs:documentation>Switzerland</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SYR">
        <xs:annotation>
          <xs:documentation>Syria</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TWN">
        <xs:annotation>
          <xs:documentation>Taiwan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TJK">
        <xs:annotation>
          <xs:documentation>Tajikistan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TZA">
        <xs:annotation>
          <xs:documentation>Tanzania</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="THA">
        <xs:annotation>
          <xs:documentation>Thailand</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TLS">
        <xs:annotation>
          <xs:documentation>Timor-Leste</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TGO">
        <xs:annotation>
          <xs:documentation>Togo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TKL">
        <xs:annotation>
          <xs:documentation>Tokelau</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TON">
        <xs:annotation>
          <xs:documentation>Tonga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TTO">
        <xs:annotation>
          <xs:documentation>Trinidad and Tobago</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PCI">
        <xs:annotation>
          <xs:documentation>Trust Territory of the Pacific Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUN">
        <xs:annotation>
          <xs:documentation>Tunisia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUR">
        <xs:annotation>
          <xs:documentation>Turkey</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TKM">
        <xs:annotation>
          <xs:documentation>Turkmenistan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TCA">
        <xs:annotation>
          <xs:documentation>Turks and Caicos Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TUV">
        <xs:annotation>
          <xs:documentation>Tuvalu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UGA">
        <xs:annotation>
          <xs:documentation>Uganda</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UKR">
        <xs:annotation>
          <xs:documentation>Ukraine</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UKR">
        <xs:annotation>
          <xs:documentation>Ukrainian SSR</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SUN">
        <xs:annotation>
          <xs:documentation>Union of Soviet Socialist Republics</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARE">
        <xs:annotation>
          <xs:documentation>United Arab Emirates</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GBR">
        <xs:annotation>
          <xs:documentation>United Kingdom</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="USA">
        <xs:annotation>
          <xs:documentation>United States </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UMI">
        <xs:annotation>
          <xs:documentation>United States Minor Outlying Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PUS">
        <xs:annotation>
          <xs:documentation>United States Miscellaneous Pacific Islands</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HVO">
        <xs:annotation>
          <xs:documentation>Upper Volta</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="URY">
        <xs:annotation>
          <xs:documentation>Uruguay</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UZB">
        <xs:annotation>
          <xs:documentation>Uzbekistan</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VUT">
        <xs:annotation>
          <xs:documentation>Vanuatu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VAT">
        <xs:annotation>
          <xs:documentation>Vatican City State</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VEN">
        <xs:annotation>
          <xs:documentation>Venezuela</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VNM">
        <xs:annotation>
          <xs:documentation>Vietnam</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VGB">
        <xs:annotation>
          <xs:documentation>Virgin Islands,  British</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VIR">
        <xs:annotation>
          <xs:documentation>Virgin Islands,  U.S.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WAK">
        <xs:annotation>
          <xs:documentation>Wake Island</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WLF">
        <xs:annotation>
          <xs:documentation>Wallis and Futuna</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ESH">
        <xs:annotation>
          <xs:documentation>Western Sahara</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YEM">
        <xs:annotation>
          <xs:documentation>Yemen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YEM">
        <xs:annotation>
          <xs:documentation>Yemen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YUG">
        <xs:annotation>
          <xs:documentation>Yugoslavia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZAR">
        <xs:annotation>
          <xs:documentation>Zaire</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZMB">
        <xs:annotation>
          <xs:documentation>Zambia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZWE">
        <xs:annotation>
          <xs:documentation>Zimbabwe</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TeachernetRomanCatholicDioceseType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AAB">
        <xs:annotation>
          <xs:documentation>Arundel and Brighton</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIR">
        <xs:annotation>
          <xs:documentation>Birmingham </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRE">
        <xs:annotation>
          <xs:documentation>Brentwood</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAR">
        <xs:annotation>
          <xs:documentation>Cardiff</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLI">
        <xs:annotation>
          <xs:documentation>Clifton</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EAS">
        <xs:annotation>
          <xs:documentation>East Anglia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HAL">
        <xs:annotation>
          <xs:documentation>Hallam</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HAN">
        <xs:annotation>
          <xs:documentation>Hexham and Newcastle</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAN">
        <xs:annotation>
          <xs:documentation>Lancaster</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LEE">
        <xs:annotation>
          <xs:documentation>Leeds</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LIV">
        <xs:annotation>
          <xs:documentation>Liverpool</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MEN">
        <xs:annotation>
          <xs:documentation>Menevia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MID">
        <xs:annotation>
          <xs:documentation>Middlesbrough</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOR">
        <xs:annotation>
          <xs:documentation>Northampton</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOT">
        <xs:annotation>
          <xs:documentation>Nottingham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PLY">
        <xs:annotation>
          <xs:documentation>Plymouth</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="POR">
        <xs:annotation>
          <xs:documentation>Portsmouth</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SAL">
        <xs:annotation>
          <xs:documentation>Salford</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHR">
        <xs:annotation>
          <xs:documentation>Shrewsbury</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOU">
        <xs:annotation>
          <xs:documentation>Southwark</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WES">
        <xs:annotation>
          <xs:documentation>Westminster</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WRE">
        <xs:annotation>
          <xs:documentation>Wrexham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="ISO4217CurrencyNamesAndCodeElementsType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="AED">
        <xs:annotation>
          <xs:documentation>UAE Dirham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AFN">
        <xs:annotation>
          <xs:documentation>Afghani</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ALL">
        <xs:annotation>
          <xs:documentation>Lek</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AMD">
        <xs:annotation>
          <xs:documentation>Armenian Dram</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ANG">
        <xs:annotation>
          <xs:documentation>Netherlands Antillian Guikder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AOA">
        <xs:annotation>
          <xs:documentation>Kwanza</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ARS">
        <xs:annotation>
          <xs:documentation>Argentine Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AUD">
        <xs:annotation>
          <xs:documentation>Australian Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AWG">
        <xs:annotation>
          <xs:documentation>Aruban Guilder</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="AZN">
        <xs:annotation>
          <xs:documentation>Azerbaijanian Manat</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BAM">
        <xs:annotation>
          <xs:documentation>Convertible Marks</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BBD">
        <xs:annotation>
          <xs:documentation>Barbados Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BDT">
        <xs:annotation>
          <xs:documentation>Taka</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BGN">
        <xs:annotation>
          <xs:documentation>Bulgarian Lev</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BHD">
        <xs:annotation>
          <xs:documentation>Bahraini Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BIF">
        <xs:annotation>
          <xs:documentation>Burundi Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BMD">
        <xs:annotation>
          <xs:documentation>Bermudian Dollar (customarily known as Bermuda Dollar) </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BND">
        <xs:annotation>
          <xs:documentation>Brunei Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BOB">
        <xs:annotation>
          <xs:documentation>Boliviano</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BOV">
        <xs:annotation>
          <xs:documentation>Mvdol</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BRL">
        <xs:annotation>
          <xs:documentation>Brazilian Real</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BSD">
        <xs:annotation>
          <xs:documentation>Bahamian Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BTN">
        <xs:annotation>
          <xs:documentation>Ngultrum</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BWP">
        <xs:annotation>
          <xs:documentation>Pula</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BYR">
        <xs:annotation>
          <xs:documentation>Belarussian Ruble</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BZD">
        <xs:annotation>
          <xs:documentation>Belize Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CAD">
        <xs:annotation>
          <xs:documentation>Canadian Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CDF">
        <xs:annotation>
          <xs:documentation>Franc Congolais</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHE">
        <xs:annotation>
          <xs:documentation>WIR Euro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHF">
        <xs:annotation>
          <xs:documentation>Swiss Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CHW">
        <xs:annotation>
          <xs:documentation>WIR Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLF">
        <xs:annotation>
          <xs:documentation>Unidades de formento</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CLP">
        <xs:annotation>
          <xs:documentation>Chilean Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CNY">
        <xs:annotation>
          <xs:documentation>Yuan Renminbi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COP">
        <xs:annotation>
          <xs:documentation>Colombian Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="COU">
        <xs:annotation>
          <xs:documentation>Unidad de Valor Real</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CRC">
        <xs:annotation>
          <xs:documentation>Costa Rican Colon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CSD">
        <xs:annotation>
          <xs:documentation>Serbian Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CUP">
        <xs:annotation>
          <xs:documentation>Cuban Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CVE">
        <xs:annotation>
          <xs:documentation>Cape Verde Escudo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CYP">
        <xs:annotation>
          <xs:documentation>Cyprus Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="CZK">
        <xs:annotation>
          <xs:documentation>Czech Koruna</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DJF">
        <xs:annotation>
          <xs:documentation>Djibouti Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DKK">
        <xs:annotation>
          <xs:documentation>Danish Krone</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DOP">
        <xs:annotation>
          <xs:documentation>Dominican Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="DZD">
        <xs:annotation>
          <xs:documentation>Algerian Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EEK">
        <xs:annotation>
          <xs:documentation>Kroon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EGP">
        <xs:annotation>
          <xs:documentation>Egyptian Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ERN">
        <xs:annotation>
          <xs:documentation>Nakfa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ETB">
        <xs:annotation>
          <xs:documentation>Ethiopian Birr</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EUR">
        <xs:annotation>
          <xs:documentation>Euro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FJD">
        <xs:annotation>
          <xs:documentation>Fiji Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="FKP">
        <xs:annotation>
          <xs:documentation>Falkland Islands Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GBP">
        <xs:annotation>
          <xs:documentation>Pound Sterling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GEL">
        <xs:annotation>
          <xs:documentation>Lari</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GHC">
        <xs:annotation>
          <xs:documentation>Cedi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GIP">
        <xs:annotation>
          <xs:documentation>Gibraltar Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GMD">
        <xs:annotation>
          <xs:documentation>Dalasi</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GNF">
        <xs:annotation>
          <xs:documentation>Guinea Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GTQ">
        <xs:annotation>
          <xs:documentation>Quetzal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GWP">
        <xs:annotation>
          <xs:documentation>Guinea-Bissau Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="GYD">
        <xs:annotation>
          <xs:documentation>Guyana Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HKD">
        <xs:annotation>
          <xs:documentation>Hong Kong Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HNL">
        <xs:annotation>
          <xs:documentation>Lempira</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HRK">
        <xs:annotation>
          <xs:documentation>Croatian Kuna</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HTG">
        <xs:annotation>
          <xs:documentation>Gourde</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="HUF">
        <xs:annotation>
          <xs:documentation>Forint</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IDR">
        <xs:annotation>
          <xs:documentation>Rupiah</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ILS">
        <xs:annotation>
          <xs:documentation>New Israeli Sheqel</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="INR">
        <xs:annotation>
          <xs:documentation>Indian Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IQD">
        <xs:annotation>
          <xs:documentation>Iraqi Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="IRR">
        <xs:annotation>
          <xs:documentation>Iranian Rial</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ISK">
        <xs:annotation>
          <xs:documentation>Iceland Krona</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JMD">
        <xs:annotation>
          <xs:documentation>Jamaican Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JOD">
        <xs:annotation>
          <xs:documentation>Jordanian Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="JPY">
        <xs:annotation>
          <xs:documentation>Yen</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KES">
        <xs:annotation>
          <xs:documentation>Kenyan Shilling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KGS">
        <xs:annotation>
          <xs:documentation>Som</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KHR">
        <xs:annotation>
          <xs:documentation>Riel</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KMF">
        <xs:annotation>
          <xs:documentation>Comoro Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KPW">
        <xs:annotation>
          <xs:documentation>North Korean Won</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KRW">
        <xs:annotation>
          <xs:documentation>Won</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KWD">
        <xs:annotation>
          <xs:documentation>Kuwaiti Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KYD">
        <xs:annotation>
          <xs:documentation>Cayman Islands Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KZT">
        <xs:annotation>
          <xs:documentation>Tenge</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LAK">
        <xs:annotation>
          <xs:documentation>Kip</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LBP">
        <xs:annotation>
          <xs:documentation>Lebanese Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LKR">
        <xs:annotation>
          <xs:documentation>Sri Lanka Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LRD">
        <xs:annotation>
          <xs:documentation>Liberian Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LSL">
        <xs:annotation>
          <xs:documentation>Loti</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LTL">
        <xs:annotation>
          <xs:documentation>Lithuanian Litas</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LVL">
        <xs:annotation>
          <xs:documentation>Latvian Lats</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="LYD">
        <xs:annotation>
          <xs:documentation>Libyan Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MAD">
        <xs:annotation>
          <xs:documentation>Moroccan Dirham</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MDL">
        <xs:annotation>
          <xs:documentation>Moldovan Leu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MGA">
        <xs:annotation>
          <xs:documentation>Malagascy Ariary</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MKD">
        <xs:annotation>
          <xs:documentation>Denar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MMK">
        <xs:annotation>
          <xs:documentation>Kyat</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MNT">
        <xs:annotation>
          <xs:documentation>Tugrik</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MOP">
        <xs:annotation>
          <xs:documentation>Pataca</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MRO">
        <xs:annotation>
          <xs:documentation>Ouguiya</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MTL">
        <xs:annotation>
          <xs:documentation>Maltese Lira</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MUR">
        <xs:annotation>
          <xs:documentation>Mauritius Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MVR">
        <xs:annotation>
          <xs:documentation>Rufiyaa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MWK">
        <xs:annotation>
          <xs:documentation>Kwacha</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MXN">
        <xs:annotation>
          <xs:documentation>Mexican Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MXV">
        <xs:annotation>
          <xs:documentation>Mexican Unidad de Inversion (UID)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MYR">
        <xs:annotation>
          <xs:documentation>Malaysian Ringgit</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="MZN">
        <xs:annotation>
          <xs:documentation>Metical </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NAD">
        <xs:annotation>
          <xs:documentation>Namibian Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NGN">
        <xs:annotation>
          <xs:documentation>Naira</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NIO">
        <xs:annotation>
          <xs:documentation>Cordoba Oro</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NOK">
        <xs:annotation>
          <xs:documentation>Norwegian Krone</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NPR">
        <xs:annotation>
          <xs:documentation>Nepalese Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="NZD">
        <xs:annotation>
          <xs:documentation>New Zealand Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="OMR">
        <xs:annotation>
          <xs:documentation>Rial Omani</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PAB">
        <xs:annotation>
          <xs:documentation>Balboa</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PEN">
        <xs:annotation>
          <xs:documentation>Nuevo Sol</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PGK">
        <xs:annotation>
          <xs:documentation>Kina</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PHP">
        <xs:annotation>
          <xs:documentation>Philippine Peso</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PKR">
        <xs:annotation>
          <xs:documentation>Pakistan Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PLN">
        <xs:annotation>
          <xs:documentation>Zloty</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="PYG">
        <xs:annotation>
          <xs:documentation>Guarani</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="QAR">
        <xs:annotation>
          <xs:documentation>Qatari Rial</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ROL">
        <xs:annotation>
          <xs:documentation>Old Leu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RON">
        <xs:annotation>
          <xs:documentation>New Leu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RUB">
        <xs:annotation>
          <xs:documentation>Russian Ruble</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="RWF">
        <xs:annotation>
          <xs:documentation>Rwanda Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SAR">
        <xs:annotation>
          <xs:documentation>Saudi Riyal</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SBD">
        <xs:annotation>
          <xs:documentation>Solomon Islands Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SCR">
        <xs:annotation>
          <xs:documentation>Seychelles Rupee</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SDD">
        <xs:annotation>
          <xs:documentation>Sudanese Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SEK">
        <xs:annotation>
          <xs:documentation>Swedish Krona</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SGD">
        <xs:annotation>
          <xs:documentation>Singapore Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SHP">
        <xs:annotation>
          <xs:documentation>Saint Helena Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SIT">
        <xs:annotation>
          <xs:documentation>Tolar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SKK">
        <xs:annotation>
          <xs:documentation>Slovak Koruna</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SLL">
        <xs:annotation>
          <xs:documentation>Leone</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SOS">
        <xs:annotation>
          <xs:documentation>Somali Shilling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SRD">
        <xs:annotation>
          <xs:documentation>Surinam Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="STD">
        <xs:annotation>
          <xs:documentation>Dobra</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SVC">
        <xs:annotation>
          <xs:documentation>El Salvador Colon</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SYP">
        <xs:annotation>
          <xs:documentation>Syrian Pound</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="SZL">
        <xs:annotation>
          <xs:documentation>Lilangeni</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="THB">
        <xs:annotation>
          <xs:documentation>Baht</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TJS">
        <xs:annotation>
          <xs:documentation>Somoni</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TMM">
        <xs:annotation>
          <xs:documentation>Manat</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TND">
        <xs:annotation>
          <xs:documentation>Tunisian Dinar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TOP">
        <xs:annotation>
          <xs:documentation>Pa'anga</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TRY">
        <xs:annotation>
          <xs:documentation>New Turkish Lira</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TTD">
        <xs:annotation>
          <xs:documentation>Trinidad and Tobago Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TWD">
        <xs:annotation>
          <xs:documentation>New Taiwan Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="TZS">
        <xs:annotation>
          <xs:documentation>Tanzanian Shilling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UAH">
        <xs:annotation>
          <xs:documentation>Hryvnia</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UGX">
        <xs:annotation>
          <xs:documentation>Uganda Shilling</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="USD">
        <xs:annotation>
          <xs:documentation>US Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="USN">
        <xs:annotation>
          <xs:documentation>US Dollar (Next day)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="USS">
        <xs:annotation>
          <xs:documentation>US Dollar (Same day)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UYU">
        <xs:annotation>
          <xs:documentation>Peso Uruguayo</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="UZS">
        <xs:annotation>
          <xs:documentation>Uzbekistan Sum</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VEB">
        <xs:annotation>
          <xs:documentation>Bolivar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VND">
        <xs:annotation>
          <xs:documentation>Dong</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="VUV">
        <xs:annotation>
          <xs:documentation>Vatu</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="WST">
        <xs:annotation>
          <xs:documentation>Tala</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XAF">
        <xs:annotation>
          <xs:documentation>CFA Franc BEAC</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XAG">
        <xs:annotation>
          <xs:documentation>Silver</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XAU">
        <xs:annotation>
          <xs:documentation>Gold</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XBA">
        <xs:annotation>
          <xs:documentation>Bond Markets Units European Composite Unit (EURCO)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XBB">
        <xs:annotation>
          <xs:documentation>European Monetary Unit (E.M.U.-6)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XBC">
        <xs:annotation>
          <xs:documentation>European Unit of Account 9 (E.U.A.-9)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XBD">
        <xs:annotation>
          <xs:documentation>European Unit of Account 17 (E.U.A.-17)</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XCD">
        <xs:annotation>
          <xs:documentation>East Caribbean Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XDR">
        <xs:annotation>
          <xs:documentation>SDR</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XFO">
        <xs:annotation>
          <xs:documentation>Gold-Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XFU">
        <xs:annotation>
          <xs:documentation>UIC-Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XOF">
        <xs:annotation>
          <xs:documentation>CFA Franc BCEAO</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XPD">
        <xs:annotation>
          <xs:documentation>Palladium</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XPF">
        <xs:annotation>
          <xs:documentation>CFP Franc</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XPT">
        <xs:annotation>
          <xs:documentation>Platinum</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XTS">
        <xs:annotation>
          <xs:documentation>Code specifically reserved for testing purposes</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="XXX">
        <xs:annotation>
          <xs:documentation>Code assigned for transactions where no currency is involved</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="YER">
        <xs:annotation>
          <xs:documentation>Yemeni Rial</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZAR">
        <xs:annotation>
          <xs:documentation>Rand</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZMK">
        <xs:annotation>
          <xs:documentation>Kwacha</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="ZWN">
        <xs:annotation>
          <xs:documentation>Zimbabwe Dollar</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

  <!--ONSParishCouncilNameType-->

  <xs:simpleType name="ONSParishCouncilNameType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the ONS Parish Council Name code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--ONSWardCodeType-->

  <xs:simpleType name="ONSWardCodeType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the ONS Ward Code code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--ONSWardNameType-->

  <xs:simpleType name="ONSWardNameType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the Ward Name code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--ONSParliamentaryConstituencyCodeType-->

  <xs:simpleType name="ONSParliamentaryConstituencyCodeType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the Parliamentary Constituency Code code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--ONSParliamentaryConstituencyNameType-->

  <xs:simpleType name="ONSParliamentaryConstituencyNameType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the Parliamentary Constituency Name code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--TeachernetLAIdType-->

  <xs:simpleType name="TeachernetLAIdType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the Teachernet LAId code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--TeachernetEthnicityCodeType-->

  <xs:simpleType name="TeachernetEthnicityCodeType">
    <xs:restriction base="xs:token">
      <xs:annotation>
        <xs:documentation>This type represents the set of values for the Teachernet Ethnicity Code code set.  The set of values is not included in the SIF Specification but may be found externally in order to validate values of this type.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--ReportPackageType-->

  <xs:complexType name="ReportPackageType">
    <xs:complexContent>
      <xs:extension base="sif:AbstractContentPackageType">
        <xs:annotation>
          <xs:documentation>
      This package has exactly the same structure as </xs:documentation>
        </xs:annotation>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>


  <!--AbstractContentPackageType-->

  <xs:complexType name="AbstractContentPackageType">
    <xs:annotation>
      <xs:documentation>
        An abstract type for derived content package types, elements and objects.  This structure may be used verbatim, optionally extending
        with additional attributes, or may be redefined to include only a subset of child elements and/or to add validation to XML
        contained in XMLData.  Only one instance of XMLData, TextData, BinaryData or
        Reference can occur in a single instance.
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:choice>
        <xs:element name="XMLData">
          <xs:complexType>
<xs:sequence>
  <xs:any processContents="lax" xmlns:xs="http://www.w3.org/2001/XMLSchema"  minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Description" use="optional" type="xs:token"><xs:annotation><xs:documentation>
          Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
          Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
        </xs:documentation></xs:annotation></xs:attribute></xs:complexType>
        </xs:element>
        <xs:element name="TextData">
          <xs:annotation>
            <xs:documentation>Contains arbitrary text, encoded in UTF-8.</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:string">
                <xs:attribute name="MIMEType" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          Optional MIME type to specifically indicate the text type.  Otherwise text/plain can be assumed.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="FileName" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          Optional file name to indicate the file from which the content originated, or to suggest a name to use when saving the content.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Description" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
          Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="BinaryData">
          <xs:annotation>
            <xs:documentation>Contains the base64Binary encoding of binary or text data not encoded in UTF-8.</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="sif:XSBase64BinaryOrEmpty">
                <xs:attribute name="MIMEType" use="required" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          MIME type to indicate the content type.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="FileName" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          Optional file name to indicate the file from which the content originated, or to suggest a name to use when saving the content.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Description" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
          Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
          Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
        </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="Reference">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="URL" minOccurs="0" type="xs:anyURI">
                <xs:annotation>
                  <xs:documentation>Location of external content.</xs:documentation>
                </xs:annotation>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="MIMEType" use="required" type="xs:token">
              <xs:annotation>
                <xs:documentation>
          MIME type to indicate the content type to be expected when retrieving the external content.
        </xs:documentation>
              </xs:annotation>
            </xs:attribute>
            <xs:attribute name="Description" use="optional" type="xs:token">
              <xs:annotation>
                <xs:documentation>
          Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
          Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
        </xs:documentation>
              </xs:annotation>
            </xs:attribute>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>The GUID that uniquely identifies an instance of the package.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>


  <!--AbstractContentElementType-->

  <xs:complexType name="AbstractContentElementType">
    <xs:annotation>
      <xs:documentation>AbstractContentPackageType used as an element rather than an object, omitting RefId, SIF_Metadata and SIF_ExtendedElements.
			  </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:choice>
        <xs:element name="XMLData">
          <xs:complexType>
<xs:sequence>
  <xs:any processContents="lax" xmlns:xs="http://www.w3.org/2001/XMLSchema"  minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="Description" use="optional" type="xs:token"><xs:annotation><xs:documentation>
				  Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
				  Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
				</xs:documentation></xs:annotation></xs:attribute></xs:complexType>
        </xs:element>
        <xs:element name="TextData">
          <xs:annotation>
            <xs:documentation>Contains arbitrary text, encoded in UTF-8.</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:string">
                <xs:attribute name="MIMEType" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  Optional MIME type to specifically indicate the text type.  Otherwise text/plain can be assumed.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="FileName" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  Optional file name to indicate the file from which the content originated, or to suggest a name to use when saving the content.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Description" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
				  Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="BinaryData">
          <xs:annotation>
            <xs:documentation>Contains the base64Binary encoding of binary or text data not encoded in UTF-8.</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="sif:XSBase64BinaryOrEmpty">
                <xs:attribute name="MIMEType" use="required" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  MIME type to indicate the content type.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="FileName" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  Optional file name to indicate the file from which the content originated, or to suggest a name to use when saving the content.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Description" use="optional" type="xs:token">
                  <xs:annotation>
                    <xs:documentation>
				  Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
				  Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
				</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="Reference">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="URL" minOccurs="0" type="xs:anyURI">
                <xs:annotation>
                  <xs:documentation>Location of external content.</xs:documentation>
                </xs:annotation>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="MIMEType" use="required" type="xs:token">
              <xs:annotation>
                <xs:documentation>
				  MIME type to indicate the content type to be expected when retrieving the external content.
				</xs:documentation>
              </xs:annotation>
            </xs:attribute>
            <xs:attribute name="Description" use="optional" type="xs:token">
              <xs:annotation>
                <xs:documentation>
				  Contains an optional description of the content or a processing hint with regard to its structure (e.g. named standard, file layout or XSD).
				  Contents may be mandated in instances of this type, or types that follow the AbstractContentPackageType pattern.
				</xs:documentation>
              </xs:annotation>
            </xs:attribute>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>


  <!--MonetaryAmountType-->

  <xs:complexType name="MonetaryAmountType">
    <xs:annotation>
      <xs:documentation>A monetary amount.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="sif:XSDecimalOrEmpty">
        <xs:attribute name="Currency" use="optional" type="sif:ISO4217CurrencyNamesAndCodeElementsType">
          <xs:annotation>
            <xs:documentation>Currency code.  Where omitted, defaults to implementation-defined local currency, typically </xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>


  <!--ObjectNameType-->

  <xs:simpleType name="ObjectNameType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:NCName">
          <xs:annotation>
            <xs:documentation>An unenumerated SIF object name.</xs:documentation>
          </xs:annotation>
          <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:annotation>
        <xs:documentation>An unenumerated SIF object name.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </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:annotation>
      <xs:documentation>Allows for a URL or a Base-64 encoding.</xs:documentation>
    </xs:annotation>
    <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:annotation>
            <xs:documentation>SIF format for a GUID.</xs:documentation>
          </xs:annotation>
          <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:annotation>
        <xs:documentation>A message identifier.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--RefIdType-->

  <xs:simpleType name="RefIdType">
    <xs:restriction base="sif:GUIDType">
      <xs:annotation>
        <xs:documentation>An object or element identifier.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--IdRefType-->

  <xs:simpleType name="IdRefType">
    <xs:restriction base="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>A reference to a RefId.</xs:documentation>
      </xs:annotation>
    </xs:restriction>
  </xs:simpleType>


  <!--VersionType-->

  <xs:simpleType name="VersionType">
    <xs:restriction>
      <xs:simpleType>
        <xs:restriction base="xs:token">
          <xs:annotation>
            <xs:documentation>A SIF version number.</xs:documentation>
          </xs:annotation>
          <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:annotation>
            <xs:documentation>A SIF version number, with wildcards for matching multiple versions.</xs:documentation>
          </xs:annotation>
          <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:annotation>
        <xs:documentation>The transport protocols defined in SIF.</xs:documentation>
      </xs:annotation>
      <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>

  <!--UKSENTypeTypeOrEmpty-->

<xs:simpleType name="UKSENTypeTypeOrEmpty">
  <xs:union>
    <xs:simpleType>
      <xs:restriction base="sif:UKSENTypeType" />
    </xs:simpleType>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:length value="0" />
      </xs:restriction>
    </xs:simpleType>
  </xs:union>
</xs:simpleType>

<!--XSDecimalOrEmpty-->

<xs:simpleType name="XSDecimalOrEmpty">
  <xs:union>
    <xs:simpleType>
      <xs:restriction base="xs:decimal" />
    </xs:simpleType>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:length value="0" />
      </xs:restriction>
    </xs:simpleType>
  </xs:union>
</xs:simpleType>

<!--IdRefTypeOrEmpty-->

<xs:simpleType name="IdRefTypeOrEmpty">
  <xs:union>
    <xs:simpleType>
      <xs:restriction base="sif:IdRefType" />
    </xs:simpleType>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:length value="0" />
      </xs:restriction>
    </xs:simpleType>
  </xs:union>
</xs:simpleType>

<!--XSBase64BinaryOrEmpty-->

<xs:simpleType name="XSBase64BinaryOrEmpty">
  <xs:union>
    <xs:simpleType>
      <xs:restriction base="xs:base64Binary" />
    </xs:simpleType>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:length value="0" />
      </xs:restriction>
    </xs:simpleType>
  </xs:union>
</xs:simpleType>

<!--URIOrBinaryTypeOrEmpty-->

<xs:simpleType name="URIOrBinaryTypeOrEmpty">
  <xs:union>
    <xs:simpleType>
      <xs:restriction base="sif:URIOrBinaryType" />
    </xs:simpleType>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:length value="0" />
      </xs:restriction>
    </xs:simpleType>
  </xs:union>
</xs:simpleType>

</xs:schema>