<!--
		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="SchoolProgramsType">
    <xs:annotation>
      <xs:documentation>
      This object contains information about Programs offered by a school.
    </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SchoolInfoRefId" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>GUID that identifies the school offering this program.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolYear" minOccurs="0" nillable="true" 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., "2009").
    </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolProgramList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Program" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Category" minOccurs="0" nillable="true" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>Program Category</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="Type" type="xs:normalizedString">
                    <xs:annotation>
                      <xs:documentation>Program Type</xs:documentation>
                    </xs:annotation>
                  </xs:element>
                  <xs:element name="OtherCodeList" minOccurs="0" nillable="true" type="sif:OtherCodeListType" />
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType">
        <xs:key name="SIF_ExtendedElementsKey46">
          <xs:selector xpath="./sif:SIF_ExtendedElement" />
          <xs:field xpath="@Name" />
        </xs:key>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>GUID that uniquely identifies this instance of the object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="SchoolPrograms" type="sif:SchoolProgramsType">
    <xs:key name="SchoolProgramsKey1">
      <xs:selector xpath="." />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>

</xs:schema>