<!--
		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="StudentDailyAttendanceType">
    <xs:annotation>
      <xs:appinfo>
        <sifChar />
        <privacyRating>Extreme</privacyRating>
      </xs:appinfo>
      <xs:documentation>This object provides daily attendance information for a particular student in a particular school on a particular date.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="StudentPersonalRefId" type="IdRefType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Medium</privacyRating>
          </xs:appinfo>
          <xs:documentation>The ID (GUID) of the student for whom this attendance information is being reported.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolInfoRefId" type="IdRefType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>The ID (GUID) of the school for which this attendance information is being reported.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Date" type="xs:date">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>The calendar date to which this attendance information relates.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SchoolYear" type="SchoolYearType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>
        School year for which this enrollment is applicable, expressed as the four-digit year in which the school year
        ends (e.g. 2007).
      </xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="DayValue" minOccurs="0" nillable="true" type="AUCodeSetsDayValueCodeType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>O</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>Value of a day this instance represents.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AttendanceCode" type="AttendanceCodeType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Extreme</privacyRating>
          </xs:appinfo>
          <xs:documentation>Locally defined code for attendance.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AttendanceStatus" type="AUCodeSetsAttendanceStatusType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>M</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>Approved or Unapproved status of this attendance code.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TimeIn" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>C</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>The time the student entered or returned to school.  Must be provided if 'Partial' chosen for DayValue.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="TimeOut" minOccurs="0" nillable="true" type="xs:time">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>C</sifChar>
            <privacyRating>Low</privacyRating>
          </xs:appinfo>
          <xs:documentation>The time the student left school.  Must be provided if 'Partial' chosen for DayValue..</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="AbsenceValue" minOccurs="0" nillable="true">
        <xs:simpleType>
          <xs:restriction base="xs:decimal">
            <xs:annotation>
              <xs:appinfo>
                <sifChar>C</sifChar>
                <privacyRating>Low</privacyRating>
              </xs:appinfo>
              <xs:documentation>Must be provided if the DayValue is "Partial" or "Other". The amount of absence represented by AttendanceCode, up to three decimal places.</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:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="AttendanceNote" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>O</sifChar>
            <privacyRating>Extreme</privacyRating>
          </xs:appinfo>
          <xs:documentation>Note related to this particular attendance.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="SIF_MetadataType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>O</sifChar>
            <privacyRating>Extreme</privacyRating>
          </xs:appinfo>
          <xs:documentation />
        </xs:annotation>
      </xs:element>
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="SIF_ExtendedElementsType">
        <xs:annotation>
          <xs:appinfo>
            <sifChar>O</sifChar>
            <privacyRating>Extreme</privacyRating>
          </xs:appinfo>
          <xs:documentation />
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="RefIdType">
      <xs:annotation>
        <xs:appinfo>
          <sifChar>M</sifChar>
          <privacyRating>Low</privacyRating>
        </xs:appinfo>
        <xs:documentation>The ID (GUID) assigned to uniquely identify this attendance record.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="StudentDailyAttendance" type="StudentDailyAttendanceType">
    <xs:key name="StudentDailyAttendanceKey1">
      <xs:selector xpath="./StudentDailyAttendance" />
      <xs:field xpath="@RefId" />
    </xs:key>
  </xs:element>

  <xs:complexType name="StudentDailyAttendanceCollectionType">
    <xs:sequence>
      <xs:element name="StudentDailyAttendance" type="StudentDailyAttendanceType" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="StudentDailyAttendances" type="StudentDailyAttendanceCollectionType" />

</xs:schema>