<!--
		SIF Implementation Specification (Australia) 3.4.3


		(April 5, 2018)
		
		Infrastructure Version: v3
	-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sifassociation.org/datamodel/au/3.4" targetNamespace="http://www.sifassociation.org/datamodel/au/3.4" elementFormDefault="qualified" version="3.4.3">
  <xs:complexType name="SchoolInfoType">
    <xs:sequence>
      <xs:element name="LocalId" minOccurs="0" nillable="true" type="LocalIdType" />
      <xs:element name="StateProvinceId" minOccurs="0" nillable="true" type="StateProvinceIdType" />
      <xs:element name="CommonwealthId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="ACARAId" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="OtherIdList" minOccurs="0" nillable="true" type="OtherIdListType" />
      <xs:element name="SchoolName" type="xs:normalizedString" />
      <xs:element name="LEAInfoRefId" minOccurs="0" nillable="true" type="RefIdType" />
      <xs:element name="OtherLEA" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="RefIdType">
              <xs:attribute name="SIF_RefObject" use="required">
                <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:element name="SchoolDistrictLocalId" minOccurs="0" nillable="true" type="LocalIdType" />
      <xs:element name="SchoolType" minOccurs="0" nillable="true" type="AUCodeSetsSchoolLevelType" />
      <xs:element name="SchoolFocusList" minOccurs="0" nillable="true" type="SchoolFocusListType" />
      <xs:element name="SchoolURL" minOccurs="0" nillable="true" type="SchoolURLType" />
      <xs:element name="SchoolEmailList" minOccurs="0" nillable="true" type="EmailListType" />
      <xs:element name="PrincipalInfo" minOccurs="0" nillable="true" type="PrincipalInfoType" />
      <xs:element name="SchoolContactList" minOccurs="0" nillable="true" type="SchoolContactListType" />
      <xs:element name="AddressList" minOccurs="0" nillable="true" type="AddressListType" />
      <xs:element name="PhoneNumberList" minOccurs="0" nillable="true" type="PhoneNumberListType" />
      <xs:element name="SessionType" minOccurs="0" nillable="true" type="AUCodeSetsSessionTypeType" />
      <xs:element name="YearLevels" minOccurs="0" nillable="true" type="YearLevelsType" />
      <xs:element name="ARIA" minOccurs="0" nillable="true" type="xs:decimal" />
      <xs:element name="OperationalStatus" minOccurs="0" nillable="true" type="OperationalStatusType" />
      <xs:element name="FederalElectorate" minOccurs="0" nillable="true" type="AUCodeSetsFederalElectorateType" />
      <xs:element name="Campus" minOccurs="0" nillable="true" type="CampusContainerType" />
      <xs:element name="SchoolSector" type="AUCodeSetsSchoolSectorCodeType" />
      <xs:element name="IndependentSchool" minOccurs="0" nillable="true" type="AUCodeSetsYesOrNoCategoryType" />
      <xs:element name="NonGovSystemicStatus" minOccurs="0" nillable="true" type="AUCodeSetsSystemicStatusType" />
      <xs:element name="System" minOccurs="0" nillable="true" type="AUCodeSetsSchoolSystemType" />
      <xs:element name="ReligiousAffiliation" minOccurs="0" nillable="true" type="AUCodeSetsAustralianStandardClassificationOfReligiousGroupsASCRGType" />
      <xs:element name="SchoolGeographicLocation" minOccurs="0" nillable="true" type="AUCodeSetsSchoolLocationType" />
      <xs:element name="LocalGovernmentArea" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="JurisdictionLowerHouse" minOccurs="0" nillable="true" type="xs:normalizedString" />
      <xs:element name="SLA" minOccurs="0" nillable="true" type="AUCodeSetsAustralianStandardGeographicalClassificationASGCType" />
      <xs:element name="SchoolCoEdStatus" minOccurs="0" nillable="true" type="AUCodeSetsSchoolCoEdStatusType" />
      <xs:element name="BoardingSchoolStatus" minOccurs="0" nillable="true" type="AUCodeSetsYesOrNoCategoryType" />
      <xs:element name="YearLevelEnrollmentList" minOccurs="0" nillable="true" type="YearLevelEnrollmentListType" />
      <xs:element name="TotalEnrollments" minOccurs="0" nillable="true" type="TotalEnrollmentsType" />
      <xs:element name="Entity_Open" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="Entity_Close" minOccurs="0" nillable="true" type="xs:date" />
      <xs:element name="SchoolGroupList" minOccurs="0" nillable="true" type="SchoolGroupListType" />
      <xs:element name="SchoolTimeZone" minOccurs="0" nillable="true" type="AUCodeSetsAustralianTimeZoneType" />
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="SIF_ExtendedElementsType" />
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="RefIdType" />
  </xs:complexType>

  <xs:element name="SchoolInfo" type="SchoolInfoType">
    <xs:key name="SchoolInfoKey1">
      <xs:selector xpath="./SchoolInfo" />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>

  <xs:complexType name="SchoolInfoCollectionType">
    <xs:sequence>
      <xs:element name="SchoolInfo" type="SchoolInfoType" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SchoolInfos" type="SchoolInfoCollectionType" />

</xs:schema>