<!--
		SIF Implementation Specification (Australia) 1.1 (December 23, 2010) Infrastructure Version: 2.4-16
	-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.sifinfo.org/au/infrastructure/2.x" xmlns:sif="http://www.sifinfo.org/au/infrastructure/2.x" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="imports/xml/xml.xsd" />
  <xs:complexType name="SchoolInfoType">
    <xs:annotation>
      <xs:documentation>This object contains information about the school.</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 school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StateProvinceId" minOccurs="0" nillable="true" type="sif:StateProvinceIdType">
        <xs:annotation>
          <xs:documentation>The state-assigned identifier for this school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CommonwealthId" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Commonwealth identifier for this school/campus.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolName" minOccurs="0" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Name of school/campus.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LEAInfoRefId" minOccurs="0" nillable="true" type="sif:RefIdType">
        <xs:annotation>
          <xs:documentation>The ID (GUID) that references the school district of which this school is a member.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OtherLEA" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:annotation>
            <xs:documentation>The ID (GUID) of another related education agency, such as a regional service agency.</xs:documentation>
          </xs:annotation>
          <xs:simpleContent>
            <xs:extension base="sif:RefIdTypeOrEmpty">
              <xs:attribute name="SIF_RefObject" use="required">
                <xs:annotation>
                  <xs:documentation>The name of the object reference. </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="LEAInfo" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:attribute>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="SchoolDistrict" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>The school district of which this school/campus is a member. Equivalent to DEECD Region.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolDistrictLocalId" minOccurs="0" nillable="true" type="sif:LocalIdType">
        <xs:annotation>
          <xs:documentation>The school district Local ID. This should be the same as the LocalId in the LEAInfo if LEAInfo details are supplied.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolType" minOccurs="0" nillable="true" type="sif:AUCodeSetsSchoolLevelType">
        <xs:annotation>
          <xs:documentation>An indication of the level of the educational institution.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolFocusList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SchoolFocus" minOccurs="0" maxOccurs="unbounded" type="sif:AUCodeSetsSchoolFocusCodeType">
              <xs:annotation>
                <xs:documentation>The type of educational institution as classified by its focus.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </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="PrincipalInfo" minOccurs="0" nillable="true" type="sif:PrincipalInfoType">
        <xs:annotation>
          <xs:documentation>Information about the campus or school principal.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolContactList" minOccurs="0" nillable="true" type="sif:SchoolContactListType">
        <xs:annotation>
          <xs:documentation>A list of contact persons associated with a school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="sif:AddressListType">
        <xs:annotation>
          <xs:documentation>The school's addresses.</xs:documentation>
        </xs:annotation>
        <xs:unique name="AddressListKey3">
          <xs:selector xpath="./sif:Address" />
          <xs:field xpath="@Type" />
          <xs:field xpath="@Role" />
        </xs:unique>
      </xs:element>
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="sif:PhoneNumberListType">
        <xs:annotation>
          <xs:documentation>The school's phone numbers.</xs:documentation>
        </xs:annotation>
        <xs:unique name="PhoneNumberListKey5">
          <xs:selector xpath="./sif:PhoneNumber" />
          <xs:field xpath="@Type" />
        </xs:unique>
      </xs:element>
      <xs:element name="SessionType" minOccurs="0" nillable="true" type="sif:AUCodeSetsSessionTypeType">
        <xs:annotation>
          <xs:documentation>Code that specifies the session type.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="YearLevels" minOccurs="0" nillable="true" type="sif:YearLevelsType">
        <xs:annotation>
          <xs:documentation>List of year levels offered by the school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ARIA" minOccurs="0" nillable="true" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>Accessibility/Remoteness Indicator of Australia.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="OperationalStatus" minOccurs="0" nillable="true" type="sif:OperationalStatusType">
        <xs:annotation>
          <xs:documentation>Operational condition of a school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="FederalElectorate" minOccurs="0" nillable="true" type="sif:AUCodeSetsFederalElectorateType">
        <xs:annotation>
          <xs:documentation>Australian Federal Electorate.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Campus" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SchoolCampusId" minOccurs="0" type="xs:normalizedString">
              <xs:annotation>
                <xs:documentation>Campus ID  - Needs to be considered as part of school. Different campus' have different addresses.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="CampusType" minOccurs="0" nillable="true" type="sif:AUCodeSetsSchoolLevelType">
              <xs:annotation>
                <xs:documentation>Type of campus.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="AdminStatus" minOccurs="0" type="sif:AUCodeSetsYesOrNoCategoryType">
              <xs:annotation>
                <xs:documentation>Is this campus the Admin Campus?</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SchoolSector" minOccurs="0" type="sif:AUCodeSetsSchoolSectorCodeType">
        <xs:annotation>
          <xs:documentation>(Government, or Non-Government).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="IndependentSchool" minOccurs="0" nillable="true" type="sif:AUCodeSetsYesOrNoCategoryType">
        <xs:annotation>
          <xs:documentation>Indicator as to whether school is an independent school (as opposed to government or catholic school).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NonGovSystemicStatus" minOccurs="0" nillable="true" type="sif:AUCodeSetsSystemicStatusType">
        <xs:annotation>
          <xs:documentation>Used to clarify a non-government school's systemic status. Either Systemic or Non-Systemic.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="System" minOccurs="0" nillable="true" type="sif:AUCodeSetsSchoolSystemType">
        <xs:annotation>
          <xs:documentation>System if a systemic school.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ReligiousAffiliation" minOccurs="0" nillable="true" type="sif:AUCodeSetsAustralianStandardClassificationOfReligiousGroupsASCRGType">
        <xs:annotation>
          <xs:documentation>Religious affiliation (if any).</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolGeographicLocation" minOccurs="0" nillable="true" type="sif:AUCodeSetsSchoolLocationType">
        <xs:annotation>
          <xs:documentation>School Location from MCEETCYA.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LocalGovernmentArea" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>LocalGovernmentArea that that school/campus is located in.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="JurisdictionLowerHouse" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Lower House area  that the school/campus  belongs to.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SLA" minOccurs="0" nillable="true" type="sif:AUCodeSetsAustralianStandardGeographicalClassificationASGCType">
        <xs:annotation>
          <xs:documentation>Statistical Local Area that the school/campus belongs to.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolCoEdStatus" minOccurs="0" nillable="true" type="sif:AUCodeSetsSchoolCoEdStatusType">
        <xs:annotation>
          <xs:documentation>Gender of student population.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="BoardingSchoolStatus" minOccurs="0" nillable="true" type="sif:AUCodeSetsYesOrNoCategoryType">
        <xs:annotation>
          <xs:documentation>Is this school a Boarding School?</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Entity_Open" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Opening date of entity.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Entity_Close" minOccurs="0" nillable="true" type="xs:date">
        <xs:annotation>
          <xs:documentation>Closing date of entity.  This element is allowed to be omitted and/or null.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolGroupList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="SchoolGroup" minOccurs="0" maxOccurs="unbounded" type="sif:LocalIdType">
              <xs:annotation>
                <xs:documentation>Repeatable element containing a local identifier to identify a loosely connected group of schools. eg. YarraValley Cluster</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_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 GUID that identifies this school.</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>

</xs:schema>