## 3.11 Timetabling and Resource Scheduling

These diagrams represent the objects used in scheduling and timetabling. The objects allow schools to securely provide SIS information to the Timetabling and/or Scheduling product of their choice, and also to allow timetable records (including teaching groups and scheduled activities), to be published to a jurisdictional data hub.

### 3.11.1 EquipmentInfo

This object represents any resource object that is not already described in SIF AU by an existing object (such as RoomInfo or LearningResource). It is intended for use with ResourceBooking, so it can represent any bookable resource; but it is not limited to that usage. While the obvious type of equipment described for booking purposes are things like computers and projectors, the types of equipment that can be booked depends on the educational organisation, and can easily extend to things like vehicles or animals.

SIF_Events are reported for this object.

Figure 3.11.1-1: EquipmentInfo

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| EquipmentInfo |  | Low | This object represents any resource object that is not already described in SIF AU by an existing object (such as RoomInfo or LearningResource). It is intended for use with ResourceBooking, so it can represent any bookable resource; but it is not limited to that usage. While the obvious type of equipment described for booking purposes are things like computers and projectors, the types of equipment that can be booked depends on the educational organisation, and can easily extend to things like vehicles or animals. |
@ | RefId | M | Low | The GUID of the Object | RefIdType
| Name | M | Low | Name of the equipment. | xs:normalizedString
| Description | O | Low | Description of the equipment. | xs:normalizedString
| LocalId | M | Low | The Local Id of the equipment. | LocalIdType
| AssetNumber | O | Low | Asset number of the equipment; may be distinct from Local Id. | LocalIdType
| InvoiceRefId | O | Low | The SIF RefId of the invoice for the equipment. | IdRefType
| PurchaseOrderRefId | O | Low | The SIF RefId of the purchase order for the equipment. | IdRefType
| EquipmentType | O | Low | Type of equipment. | union of: AUCodeSetsEquipmentTypeType xs:token
| SIF_RefId | O | Low | The SIF RefId of the owner/location of the equipment. | IdRefType
@ | SIF_RefObject | M | Low | The type of SIF object that the SIF_RefId element identifies. | values: SchoolInfo RoomInfo LEAInfo other
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.1-1: EquipmentInfo
JSON
{ "EquipmentInfo": { "RefId": "B5739375-800A-C4CC-6385-0BB2754114AA", "Name": "Overhead Projector 3", "LocalId": "OHP3", "EquipmentType": "OverheadProjector", "SIF_RefId": { "SIF_RefObject": "SchoolInfo", "value": "B7A34E56-1C97-345C-0A4E-11BB112B2753" } } }
XML
<EquipmentInfo RefId="B5739375-800A-C4CC-6385-0BB2754114AA"> <Name>Overhead Projector 3</Name> <LocalId>OHP3</LocalId> <EquipmentType>OverheadProjector</EquipmentType> <SIF_RefId SIF_RefObject="SchoolInfo">B7A34E56-1C97-345C-0A4E-11BB112B2753</SIF_RefId> </EquipmentInfo>
Example 3.11.1-1: EquipmentInfo Example

### 3.11.2 ResourceBooking

This object represents a booking for any resource for a single contiguous time period. This could be either a room or another resource, such as equipment.

SIF_Events are reported for this object.

Figure 3.11.2-1: ResourceBooking

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| ResourceBooking |  | Low | This object represents a booking for any resource for a single contiguous time period. This could be either a room or another resource, such as equipment. |
@ | RefId | M | Low | The GUID of the Object | RefIdType
| ResourceRefId | O | Low | The ID (GUID) of the resource being booked. Provided only if the resource being booked is a SIF object with a GUID. | IdRefType
@ | SIF_RefObject | M | Low | The type of SIF object that the ResourceRefId element identifies. | values: RoomInfo EquipmentInfo LearningResource
| ResourceLocalId | M | Low | The Local Id of the resource being booked. Provided whether the resource is a SIF object or not. | LocalIdType
| StartDateTime | M | Low | Starting date and time for booking. | xs:dateTime
| FinishDateTime | M | Low | Finish date and time for booking. | xs:dateTime
| FromPeriod | O | Low | Starting period for booking. If specified, the booking is intended to align with bell times. | LocalIdType
| ToPeriod | O | Low | Finish period for booking. If specified, the booking is intended to align with bell times. | LocalIdType
| Booker | M | Low | Indicates who booked the room. Points to a StaffPersonal record. This will normally (but not necessarily) be the teacher who will be occupying the room. | IdRefType
| Reason | O | Low | A free-text explanation of the reason for the room booking. | xs:normalizedString
| ScheduledActivityRefId | O | Low | Links the room-booking to a ScheduledActivity. | IdRefType
| KeepOld | O | Low | If ScheduledActivity is provided, 'true' means the booker wishes to retain all rooms already specified for the ScheduledActivity. 'false' means that room(s)/resources are now available for other uses. | xs:boolean
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.2-1: ResourceBooking
JSON
{ "ResourceBooking": { "RefId": "B5739375-800A-C4CC-6385-0BB2754114AA", "ResourceRefId": { "SIF_RefObject": "LearningResource", "value": "B7A34E56-1C97-345C-0A4E-11BB112B2753" }, "ResourceLocalId": "ZXY789", "StartDateTime": "2011-01-01T16:30:00", "FinishDateTime": "2011-01-01T17:30:00", "FromPeriod": "3", "ToPeriod": "3", "Booker": "98157AA0-13BA-8C3D-00AA-012B359D7512", "ScheduledActivityRefId": "A75A0010-1A8C-301D-02E3-A05B359D0A00", "KeepOld": false } }
XML
<ResourceBooking RefId="B5739375-800A-C4CC-6385-0BB2754114AA"> <ResourceRefId SIF_RefObject="LearningResource">B7A34E56-1C97-345C-0A4E-11BB112B2753</ResourceRefId> <ResourceLocalId>ZXY789</ResourceLocalId> <StartDateTime>2011-01-01T16:30:00</StartDateTime> <FinishDateTime>2011-01-01T17:30:00</FinishDateTime> <FromPeriod>3</FromPeriod> <ToPeriod>3</ToPeriod> <Booker>98157AA0-13BA-8C3D-00AA-012B359D7512</Booker> <ScheduledActivityRefId>A75A0010-1A8C-301D-02E3-A05B359D0A00</ScheduledActivityRefId> <KeepOld>false</KeepOld> </ResourceBooking>
Example 3.11.2-1: ResourceBooking Example

### 3.11.3 RoomInfo

This object contains all of the information about a school's room. This object may contain a reference to a room type so that it may represent anything from a gym, cafeteria, to a standard classroom. The StaffList element usually contains the homeroom teacher.

SIF_Events are reported for this object.

Figure 3.11.3-1: RoomInfo

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| RoomInfo |  | Low | This object contains all of the information about a school's room. This object may contain a reference to a room type so that it may represent anything from a gym, cafeteria, to a standard classroom. The StaffList element usually contains the homeroom teacher. |
@ | RefId | M | Low | GUID that identifies this room. | RefIdType
| SchoolInfoRefId | M | Low | GUID that identifies the school that this room belongs to. | IdRefType
| LocalId | O | Low | The locally assigned identifier for the room. | LocalIdType
| RoomNumber | M | Low | Room number as presented to the user/application. It is intended to be human readable and user-friendly corresponding to the physical label of the Room. | xs:normalizedString
| StaffList | O | Low | A list of GUIDs that identify the staff person assigned to this room (e.g. the homeroom teacher). | StaffListType
| Description | O | Low | Friendly name that can be assigned to the room (e.g. `Staff Cafeteria`). | xs:normalizedString
| Building | O | Low | Extra building information. In the future Building could become its own object in which case this element will need to be changed to a RefId. Currently it is only required as a free text field. | xs:normalizedString
| HomeroomNumber | O | Low | When a room is designated as a homeroom it may have a different number. Usually blank when room is not a homeroom. | xs:normalizedString
| Size | O | Low | Size in square meters. | xs:decimal
| Capacity | O | Low | Number of persons (usually students) that this room can hold. | xs:unsignedInt
| PhoneNumber | O | Low | Phone number for the room | PhoneNumberType
| RoomType | O | Low | Type of room, for use in timetabling. | xs:token
| AvailableForTimetable | O | High | Is this Room available to be Timetabled? | AUCodeSetsYesOrNoCategoryType
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.3-1: RoomInfo
JSON
{ "RoomInfo": { "RefId": "D3E34B35-9D75-101A-8C3D-00AA001A1652", "SchoolInfoRefId": "A2E35B35-9D75-101A-8C3D-00AA001A0000", "RoomNumber": "101", "StaffList": { "StaffPersonalRefId": [ "A8C3A2E3-5B35-9D75-101D-00AA001A0000" ] }, "Description": "Room 101", "Building": "Main A", "HomeroomNumber": "10-HR-A", "Size": 400, "Capacity": 35, "PhoneNumber": { "Type": "0096", "Number": "(02) 9555-1234" }, "AvailableForTimetable": "Y" } }
XML
<RoomInfo RefId="D3E34B35-9D75-101A-8C3D-00AA001A1652"> <SchoolInfoRefId>A2E35B35-9D75-101A-8C3D-00AA001A0000</SchoolInfoRefId> <RoomNumber>101</RoomNumber> <StaffList> <StaffPersonalRefId>A8C3A2E3-5B35-9D75-101D-00AA001A0000</StaffPersonalRefId> </StaffList> <Description>Room 101</Description> <Building>Main A</Building> <HomeroomNumber>10-HR-A</HomeroomNumber> <Size>400</Size> <Capacity>35</Capacity> <PhoneNumber Type="0096"> <Number>(02) 9555-1234</Number> </PhoneNumber> <AvailableForTimetable>Y</AvailableForTimetable> </RoomInfo>
Example 3.11.3-1: RoomInfo Example

### 3.11.4 ScheduledActivity

This object provides a broader range of scheduled activities than just normal teaching classes (as covered by SessionInfo).

SIF_Events are reported for this object.

Figure 3.11.4-1: ScheduledActivity

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| ScheduledActivity |  | Low | This object provides a broader range of scheduled activities than just normal teaching classes (as covered by SessionInfo). |
@ | RefId | M | Low | The GUID of the Object | RefIdType
| SchoolInfoRefId | M | Low | The ID (GUID) of the school for which this attendance information is being reported. | IdRefType
| TimeTableCellRefId | O | Low | An optional Id (GUID) for the timetable cell that this activity is scheduled in. Instances of cyclical classroom sessions will have this element, but one-off events such as excursions will not use this element. | IdRefType
| DayId | O | Low | Day Id. | LocalIdType
| PeriodId | O | Low | Period Id within the Day Id | LocalIdType
| TimeTableRefId | O | Low | The GUID of the TimeTable to which this Cell belongs | IdRefType
| ActivityDate | M | Low | Date for which the activity is scheduled. This element is mandatory even if the object is used for preplanning excursions: a tentative or notional date and time should be provided if a finalised date is not available. | xs:date
| StartTime | M | Low | Starting time for activity. This element is mandatory even if the object is used for preplanning excursions: a tentative or notional date and time should be provided if a finalised date is not available. | xs:time
| FinishTime | M | Low | Finish time for activity. This element is mandatory even if the object is used for preplanning excursions: a tentative or notional date and time should be provided if a finalised date is not available. | xs:time
| CellType | O | Low | Type of Lesson/Session eg Teaching, Lunch etc. | xs:normalizedString
| TimeTableSubjectRefId | O | Low | Optional to link the GUID of the Subject, if this is a piece of curriculum being scheduled. | IdRefType
| TeacherList | O | Low | A listing of the teachers assigned to the activity, and the type of supervision they are credited with. If no teachers are listed, the activity is assumed to be unsupervised. | ScheduledTeacherListType
| RoomList | O | Low | List of rooms in which the scheduled activity is held. Used for onsite venues which are represented in the source system as rooms. Can include large venues (ovals, library, etc), if they have been represented as rooms; source system practice varies. | RoomListType
| AddressList | O | Low | The address(es) associated with the scheduled activity. | AddressListType
| Location | O | Low | Text description of venue. Can be used for either onsite or offsite venues. Can be used if neither RoomList nor AddressList is appropriate or supported by the source system. (E.g. the venue is the oval, which is not represented as a room; the venue is a specific part of the park). If RoomList, AddressList, and Location conflict, the order of priority in interpreting the object is RoomList, then AddressList, then Location. | xs:normalizedString
| ActivityType | O | Low | The type of activity undertaken. | AUCodeSetsScheduledActivityTypeType
| ActivityName | O | Low | This element is required if this is a one-off event, i.e. there is no TimeTableCellRefId provided, in order for excursions to be uniquely identified. | xs:normalizedString
| ActivityComment | O | Low | Allows free-text information, e.g. for excursions. Comment should not be used to identify the location of the venue, since the contents of Comment are open-ended. | xs:normalizedString
| StudentList | O | Low | Students who are scheduled to attend the event. Not required for cyclical events, as this would be expected to be provided from TimeTableCell/TeachingGroup instead. | StudentsType
| TeachingGroupList | O | Low | Teaching groups which are scheduled to attend the event. Not required for cyclical events, as this would be expected to be provided from TimeTableCell/TeachingGroup instead. | TeachingGroupListType
| YearLevels | O | Low | List of year levels offered by the school. | YearLevelsType
| Override | O | Low | This flag should be used to indicate whether or not this ScheduledActivity overrides a previous ScheduledActivity. In any initial provisioning this element should NOT be provided. | ScheduledActivityOverrideType
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.4-1: ScheduledActivity
JSON
{ "ScheduledActivity": { "RefId": "BD3E34B3-59D7-5101-A8C3-D00AA001A165", "SchoolInfoRefId": "B7A34E56-1C97-345C-0A4E-11BB112B2753", "TimeTableCellRefId": "FDF05286-9094-4405-96B3-D6CC0ED5F00B", "DayId": "1", "TimeTableRefId": "2A7F0D96-3E99-4B83-A958-690C360A36C2", "ActivityDate": "2014-10-10", "StartTime": "12:05:00", "FinishTime": "13:30:00", "TeacherList": { "TeacherCover": [ { "StaffPersonalRefId": "98157AA0-13BA-8C3D-00AA-012B359D7512", "StaffLocalId": "US8923", "StartTime": "12:05:00", "FinishTime": "13:00:00", "Credit": "In-Lieu", "Supervision": "MinimalSupervision", "Weighting": 0.5 }, { "StaffPersonalRefId": "A75A0010-1A8C-301D-02E3-A05B359D0A00", "StaffLocalId": "ZY3213", "StartTime": "13:00:00", "FinishTime": "13:30:00", "Credit": "Extra", "Supervision": "MinimalSupervision", "Weighting": 0.5 } ] }, "RoomList": { "RoomInfoRefId": [ "11737EA4-301C-ADCA-75C8-7214A7C46BDB" ] }, "ActivityType": "Incursion", "StudentList": { "StudentPersonalRefId": [ "FAE9D90A-38F8-4B72-9C92-F868CB63C9F3" ] }, "TeachingGroupList": { "TeachingGroupRefId": [ "EB79C3D1-FF19-11D7-8513-8B604A511DAD", "B2345163-8474-6B38-7459-000F84723A00" ] } } }
XML
<ScheduledActivity RefId="BD3E34B3-59D7-5101-A8C3-D00AA001A165"> <SchoolInfoRefId>B7A34E56-1C97-345C-0A4E-11BB112B2753</SchoolInfoRefId> <TimeTableCellRefId>FDF05286-9094-4405-96B3-D6CC0ED5F00B</TimeTableCellRefId> <DayId>1</DayId> <TimeTableRefId>2A7F0D96-3E99-4B83-A958-690C360A36C2</TimeTableRefId> <ActivityDate>2014-10-10</ActivityDate> <StartTime>12:05:00</StartTime> <FinishTime>13:30:00</FinishTime> <TeacherList> <TeacherCover> <StaffPersonalRefId>98157AA0-13BA-8C3D-00AA-012B359D7512</StaffPersonalRefId> <StaffLocalId>US8923</StaffLocalId> <StartTime>12:05:00</StartTime> <FinishTime>13:00:00</FinishTime> <Credit>In-Lieu</Credit> <Supervision>MinimalSupervision</Supervision> <Weighting>0.5</Weighting> </TeacherCover> <TeacherCover> <StaffPersonalRefId>A75A0010-1A8C-301D-02E3-A05B359D0A00</StaffPersonalRefId> <StaffLocalId>ZY3213</StaffLocalId> <StartTime>13:00:00</StartTime> <FinishTime>13:30:00</FinishTime> <Credit>Extra</Credit> <Supervision>MinimalSupervision</Supervision> <Weighting>0.5</Weighting> </TeacherCover> </TeacherList> <RoomList> <RoomInfoRefId>11737EA4-301C-ADCA-75C8-7214A7C46BDB</RoomInfoRefId> </RoomList> <ActivityType>Incursion</ActivityType> <StudentList> <StudentPersonalRefId>FAE9D90A-38F8-4B72-9C92-F868CB63C9F3</StudentPersonalRefId> </StudentList> <TeachingGroupList> <TeachingGroupRefId>EB79C3D1-FF19-11D7-8513-8B604A511DAD</TeachingGroupRefId> <TeachingGroupRefId>B2345163-8474-6B38-7459-000F84723A00</TeachingGroupRefId> </TeachingGroupList> </ScheduledActivity>
Example 3.11.4-1: ScheduledActivity Example

### 3.11.5 SchoolCourseInfo

This object is for course information.

All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds.

SIF_Events are reported for this object.

Figure 3.11.5-1: SchoolCourseInfo

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| SchoolCourseInfo |  | Low | This object is for course information. All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds. |
@ | RefId | M | Low | The ID (GUID) that uniquely identifies the school course. | RefIdType
| SchoolInfoRefId | M | Low | The ID (GUID) that identifies the school where the course is offered. | IdRefType
| SchoolLocalId | O | Low | The locally-assigned identifier for this school/campus. | LocalIdType
| SchoolYear | C | Low | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g. `2007`). | SchoolYearType
| TermInfoRefId | C | Low | The ID (GUID) that uniquely identifies this TermInfo (reportable time period). Either SchoolYear or TermInfoRefId must be provided. | IdRefType
| CourseCode | M | Low | School-defined local code for the course. | xs:normalizedString
| StateCourseCode | O | Low | State-defined standard course code used to report information about courses. | xs:normalizedString
| DistrictCourseCode | O | Low | The corresponding district course code. | xs:normalizedString
| SubjectAreaList | O | Low | Subject matter areas. | SubjectAreaListType
| CourseTitle | M | Low | Title of the course. | xs:normalizedString
| Description | O | Low | Textual description of the course. | xs:normalizedString
| InstructionalLevel | O | Low | An indication of the general nature and difficulty of instruction provided. | xs:normalizedString
| CourseCredits | O | Low | The number of credits awarded upon course completion. | xs:normalizedString
| CoreAcademicCourse | O | Low | Does the course meet the state definition of a core academic course? | AUCodeSetsYesOrNoCategoryType
| GraduationRequirement | O | Low | Does the state require that the course be completed for graduation? | AUCodeSetsYesOrNoCategoryType
| Department | O | Low | Department with jurisdiction over this course. | xs:normalizedString
| CourseContent | O | Low | Description of course content. | xs:normalizedString
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.5-1: SchoolCourseInfo
JSON
{ "SchoolCourseInfo": { "RefId": "9D75101A-8C3D-00AA-001A-0000A2E35B35", "SchoolInfoRefId": "101A8C3D-00AA-001A-0000-A2E35B359D75", "SchoolYear": "2006", "CourseCode": "CS101", "StateCourseCode": "08-001", "DistrictCourseCode": "CS101", "SubjectAreaList": { "SubjectArea": [ { "Code": "Graphic Arts" } ] }, "CourseTitle": "Gif, JPeg, or Png: What's the Difference?", "Description": "Explore the various types of files related to graphic arts.", "InstructionalLevel": "0571", "CourseCredits": "2", "CoreAcademicCourse": "N", "GraduationRequirement": "N" } }
XML
<SchoolCourseInfo RefId="9D75101A-8C3D-00AA-001A-0000A2E35B35"> <SchoolInfoRefId>101A8C3D-00AA-001A-0000-A2E35B359D75</SchoolInfoRefId> <SchoolYear>2006</SchoolYear> <CourseCode>CS101</CourseCode> <StateCourseCode>08-001</StateCourseCode> <DistrictCourseCode>CS101</DistrictCourseCode> <SubjectAreaList> <SubjectArea> <Code>Graphic Arts</Code> </SubjectArea> </SubjectAreaList> <CourseTitle>Gif, JPeg, or Png: What's the Difference?</CourseTitle> <Description>Explore the various types of files related to graphic arts.</Description> <InstructionalLevel>0571</InstructionalLevel> <CourseCredits>2</CourseCredits> <CoreAcademicCourse>N</CoreAcademicCourse> <GraduationRequirement>N</GraduationRequirement> </SchoolCourseInfo>
Example 3.11.5-1: SchoolCourseInfo Example

### 3.11.6 SectionInfo

This object provides information about the section, the specific time period a session of the course meets. Australian Implementations have been using TeachingGroup as a representation of a class;

SIF_Events are reported for this object.

Figure 3.11.6-1: SectionInfo

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| SectionInfo |  | Low | This object provides information about the section, the specific time period a session of the course meets. Australian Implementations have been using TeachingGroup as a representation of a class; |
@ | RefId | M | Low | The Id (GUID) that uniquely identifies this section entity. | RefIdType
| SchoolCourseInfoRefId | M | Low | The Id (GUID) that identifies the course being taught in this section. | IdRefType
| LocalId | M | Low | The locally-assigned identifier for this course section. | LocalIdType
| Description | O | Low | Description of the course section. | xs:normalizedString
| SchoolYear | C | Low | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g. `2013` for the 2013 school year). Either SchoolYear or TermInfoRefId must be provided. | SchoolYearType
| TermInfoRefId | C | Low | The Id (GUID) of the term to which this schedule information relates. Either TermInfoRefId or SchoolYear must be provided. | IdRefType
| MediumOfInstruction | O | Low | Medium through which the student receives instructional communication from the teacher. | MediumOfInstructionType
| LanguageOfInstruction | O | Low | Language in which the section is taught. | LanguageOfInstructionType
| LocationOfInstruction | O | Low | Description of the location in which the section is taught. | LocationOfInstructionType
| SummerSchool | O | Low | Is this a summer school assignment? | values: Yes No
| SchoolCourseInfoOverride | O | Low | Optional overrides of the course information for this section. | SchoolCourseInfoOverrideType
| CourseSectionCode | O | Low | A section code that is linked to a course. This should be a unique identifier within the school year and course (i.e. the class instance number for a course). For example, Algebra I: Section 23 is different from English II: Section 23. | xs:normalizedString
| SectionCode | O | Low | A unique identifier of the section for the school year and across courses (i.e. unique across all courses). For example, Algebra I sections range from 00122 to 00140 and English II courses range from 00141 to 00152. | xs:normalizedString
| CountForAttendance | O | Low | Indicates if attendance in this section is collected and used in attendance calculations. | values: Yes No
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.6-1: SectionInfo
JSON
{ "SectionInfo": { "RefId": "D3E34B35-9D75-101A-8C3D-00AA001A1652", "SchoolCourseInfoRefId": "101A8C3D-00AA-001A-0000-A2E35B359D75", "LocalId": "287-1", "SchoolYear": "2013", "MediumOfInstruction": { "Code": "0605" }, "LanguageOfInstruction": { "Code": "1201" }, "LocationOfInstruction": { "Code": "0340", "OtherCodeList": { "OtherCode": [ { "Codeset": "Text", "value": "NSW DEC" } ] } }, "SchoolCourseInfoOverride": { "Override": "Yes", "CourseCode": "CS101A", "StateCourseCode": "08-001A", "DistrictCourseCode": "CS101A", "SubjectArea": { "Code": "05", "OtherCodeList": { "OtherCode": [ { "Codeset": "Text", "value": "Graphic Arts for Beginners" } ] } }, "CourseTitle": "Graphics Basics", "InstructionalLevel": "Graduate Certificate II" } } }
XML
<SectionInfo RefId="D3E34B35-9D75-101A-8C3D-00AA001A1652"> <SchoolCourseInfoRefId>101A8C3D-00AA-001A-0000-A2E35B359D75</SchoolCourseInfoRefId> <LocalId>287-1</LocalId> <SchoolYear>2013</SchoolYear> <MediumOfInstruction> <Code>0605</Code> </MediumOfInstruction> <LanguageOfInstruction> <Code>1201</Code> </LanguageOfInstruction> <LocationOfInstruction> <Code>0340</Code> <OtherCodeList> <OtherCode Codeset="Text">NSW DEC</OtherCode> </OtherCodeList> </LocationOfInstruction> <SchoolCourseInfoOverride Override="Yes"> <CourseCode>CS101A</CourseCode> <StateCourseCode>08-001A</StateCourseCode> <DistrictCourseCode>CS101A</DistrictCourseCode> <SubjectArea> <Code>05</Code> <OtherCodeList> <OtherCode Codeset="Text">Graphic Arts for Beginners</OtherCode> </OtherCodeList> </SubjectArea> <CourseTitle>Graphics Basics</CourseTitle> <InstructionalLevel>Graduate Certificate II</InstructionalLevel> </SchoolCourseInfoOverride> </SectionInfo>
Example 3.11.6-1: SectionInfo - Example 1

### 3.11.7 StudentSectionEnrollment

This object contains information about a student's enrollment in a section of a course.

SIF_Events are reported for this object.

Figure 3.11.7-1: StudentSectionEnrollment

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| StudentSectionEnrollment |  |  | This object contains information about a student's enrollment in a section of a course. |
@ | RefId | M |  | The Id (GUID) that uniquely identifies this StudentSectionEnrollment entity. | RefIdType
| StudentPersonalRefId | M |  | The Id (GUID) of the student to whom the enrollment information applies. | IdRefType
| SectionInfoRefId | M |  | The Id (GUID) of the section in which this student is enrolled. | IdRefType
| SchoolYear | O |  | School year for which the information is applicable, expressed as the four-digit year. e.g. `2013` | SchoolYearType
| EntryDate | O |  | Date from when this course section enrollment is valid. | xs:date
| ExitDate | O |  | The last school calendar day (membership day) the student was enrolled in the course section (inclusive). | xs:date
| LocalCodeList | O | High |  | LocalCodeListType
| SIF_Metadata | O | High |  | SIF_MetadataType
| SIF_ExtendedElements | O | High |  | SIF_ExtendedElementsType

Table 3.11.7-1: StudentSectionEnrollment
JSON
{ "StudentSectionEnrollment": { "RefId": "983AC165-9879-3002-C3D0-0AA00456789D", "StudentPersonalRefId": "CAE29316-5987-101A-8C3D-00AA00456789", "SectionInfoRefId": "9076AB23-E386-112B-7EA2-256100BB3312", "SchoolYear": "2013", "EntryDate": "2013-02-02", "ExitDate": "2013-11-15" } }
XML
<StudentSectionEnrollment RefId="983AC165-9879-3002-C3D0-0AA00456789D"> <StudentPersonalRefId>CAE29316-5987-101A-8C3D-00AA00456789</StudentPersonalRefId> <SectionInfoRefId>9076AB23-E386-112B-7EA2-256100BB3312</SectionInfoRefId> <SchoolYear>2013</SchoolYear> <EntryDate>2013-02-02</EntryDate> <ExitDate>2013-11-15</ExitDate> </StudentSectionEnrollment>
Example 3.11.7-1: StudentSectionEnrollment

### 3.11.8 TeachingGroup

This object identifies a particular Teaching Group or class in a particular a time table.

The proposed object is based on the UK B1: TeachingGroup object. For the Australian object, a subject being taught at any one year level can have more than one teaching group in any one time table. Also a teaching group can be brought together for more than one subject.

All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds.

SIF_Events are reported for this object.

Figure 3.11.8-1: TeachingGroup

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| TeachingGroup |  | Medium | This object identifies a particular Teaching Group or class in a particular a time table. The proposed object is based on the UK B1: TeachingGroup object. For the Australian object, a subject being taught at any one year level can have more than one teaching group in any one time table. Also a teaching group can be brought together for more than one subject. All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds. |
@ | RefId | M | Low | The GUID of the TeachingGroup | RefIdType
| SchoolYear | M | Low | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g., "2007"). | SchoolYearType
| LocalId | M | Low | LocalId of the Teaching Group (previously ClassIndicator). | LocalIdType
| ShortName | M | Low | Short free format label that describes the group. | xs:normalizedString
| LongName | O | Low | Longer description if required. | xs:normalizedString
| GroupType | O | Low | Added to allow local implementations to filter on categories of Teaching Group. Where there is a need to filter particular groups based on their types for particular functions; group type provides the means of identifying the type of group such as roll class or subject class for instance and treat them accordingly. | xs:normalizedString
| Set | O | Low | Set Number (UK) | xs:normalizedString
| Block | O | Low | Block (UK) | xs:normalizedString
| CurriculumLevel | O | Low | Assessment Stage eg VELS Level | xs:normalizedString
| SchoolInfoRefId | O | Low | GUID of SchoolInfo object this teaching group belongs to. | RefIdType
| SchoolLocalId | O | Low | Local School Id. | LocalIdType
| SchoolCourseInfoRefId | O | Low | GUID of SchoolCourseInfo object this teaching group is part of. | RefIdType
| SchoolCourseLocalId | O | Low | Local Course Id. | LocalIdType
| TimeTableSubjectRefId | O | Low | GUID of TimeTableSubject object this teaching group belongs to. | RefIdType
| TimeTableSubjectLocalId | O | Low | Local subject Id. | LocalIdType
| KeyLearningArea | O | Low | Key Learning Area - map to ACStrand in Union with Religious Studies and Other. | AUCodeSetsACStrand
| Semester | O | Low | Semester, Term, or Quarter subject offered. | xs:unsignedInt
| StudentList | O | Medium | List of Students in this Teaching Group | StudentListType
| TeacherList | O | Medium | A List of teachers associated with the group - may or may not include the teacher timetabled in the schedule. | TeacherListType
| MinClassSize | O | Low | Minimum class size. | xs:integer
| MaxClassSize | O | Low | Maximum class size | xs:integer
| TeachingGroupPeriodList | O | Low | A List of schedule information that can be published by an SIS which is a subset of information available in the TimeTableCell object. PeriodId or StartTime must be provided. | TeachingGroupPeriodListType
| LocalCodeList | O | Medium |  | LocalCodeListType
| SIF_Metadata | O | Medium |  | SIF_MetadataType
| SIF_ExtendedElements | O | Medium |  | SIF_ExtendedElementsType

Table 3.11.8-1: TeachingGroup
JSON
{ "TeachingGroup": { "RefId": "64A309DA-063A-2E35-B359-D75101A8C3D1", "SchoolYear": "2008", "LocalId": "20087ASPN", "ShortName": "7A SPN", "LongName": "Year 7A Maths - Space and Numbers", "Set": "4", "Block": "6", "CurriculumLevel": "VELS Level 5", "StudentList": { "TeachingGroupStudent": [ { "StudentPersonalRefId": "9897466F-200E-4BC1-B9AE-D1507DA15CEF", "StudentLocalId": "SMI001", "Name": { "Type": "LGL", "FamilyName": "Smith", "GivenName": "Peter" } }, { "StudentPersonalRefId": "7C834EA9-EDA1-2090-347F-83297E1C290D", "StudentLocalId": "SMI002", "Name": { "Type": "LGL", "FamilyName": "Smith", "GivenName": "Jennifer" } }, { "StudentPersonalRefId": "7C834EA9-EDA1-2090-347F-83297E1C290E", "StudentLocalId": "SMI003", "Name": { "Type": "LGL", "FamilyName": "Smith", "GivenName": "Terence" } } ] }, "TeacherList": { "TeachingGroupTeacher": [ { "StaffPersonalRefId": "A8C3A2E3-5B35-9D75-101D-00AA001A0000", "StaffLocalId": "SMI1", "Name": { "Type": "LGL", "FamilyName": "Smith", "GivenName": "Thomas" }, "Association": "Class Teacher" }, { "StaffPersonalRefId": "A8CCCCE3-5B35-9D75-101D-00AA001A0000", "StaffLocalId": "LONG2", "Name": { "Type": "LGL", "FamilyName": "Long", "GivenName": "Tamara" }, "Association": "Integration Aide" } ] }, "TeachingGroupPeriodList": { "TeachingGroupPeriod": [ { "DayId": "M", "PeriodId": "2" }, { "DayId": "F", "PeriodId": "6" } ] } } }
XML
<TeachingGroup RefId="64A309DA-063A-2E35-B359-D75101A8C3D1"> <SchoolYear>2008</SchoolYear> <LocalId>20087ASPN</LocalId> <ShortName>7A SPN</ShortName> <LongName>Year 7A Maths - Space and Numbers</LongName> <Set>4</Set> <Block>6</Block> <CurriculumLevel>VELS Level 5</CurriculumLevel> <StudentList> <TeachingGroupStudent> <StudentPersonalRefId>9897466F-200E-4BC1-B9AE-D1507DA15CEF</StudentPersonalRefId> <StudentLocalId>SMI001</StudentLocalId> <Name Type="LGL"> <FamilyName>Smith</FamilyName> <GivenName>Peter</GivenName> </Name> </TeachingGroupStudent> <TeachingGroupStudent> <StudentPersonalRefId>7C834EA9-EDA1-2090-347F-83297E1C290D</StudentPersonalRefId> <StudentLocalId>SMI002</StudentLocalId> <Name Type="LGL"> <FamilyName>Smith</FamilyName> <GivenName>Jennifer</GivenName> </Name> </TeachingGroupStudent> <TeachingGroupStudent> <StudentPersonalRefId>7C834EA9-EDA1-2090-347F-83297E1C290E</StudentPersonalRefId> <StudentLocalId>SMI003</StudentLocalId> <Name Type="LGL"> <FamilyName>Smith</FamilyName> <GivenName>Terence</GivenName> </Name> </TeachingGroupStudent> </StudentList> <TeacherList> <TeachingGroupTeacher> <StaffPersonalRefId>A8C3A2E3-5B35-9D75-101D-00AA001A0000</StaffPersonalRefId> <StaffLocalId>SMI1</StaffLocalId> <Name Type="LGL"> <FamilyName>Smith</FamilyName> <GivenName>Thomas</GivenName> </Name> <Association>Class Teacher</Association> </TeachingGroupTeacher> <TeachingGroupTeacher> <StaffPersonalRefId>A8CCCCE3-5B35-9D75-101D-00AA001A0000</StaffPersonalRefId> <StaffLocalId>LONG2</StaffLocalId> <Name Type="LGL"> <FamilyName>Long</FamilyName> <GivenName>Tamara</GivenName> </Name> <Association>Integration Aide</Association> </TeachingGroupTeacher> </TeacherList> <TeachingGroupPeriodList> <TeachingGroupPeriod> <DayId>M</DayId> <PeriodId>2</PeriodId> </TeachingGroupPeriod> <TeachingGroupPeriod> <DayId>F</DayId> <PeriodId>6</PeriodId> </TeachingGroupPeriod> </TeachingGroupPeriodList> </TeachingGroup>
Example 3.11.8-1: TeachingGroup

### 3.11.9 TimeTable

The purpose of this object is to define a schedule or Time Table structure/skeleton for the school. The Time Table is produced by the Time Tabling software. Once the Time Table is produced, the time tabling software creates the schedule based on business rules and constraints to fit into the time table structure.

The proposed Time Table object is based on a combination of the proposed UK B6 – Timetable Cycle Object and Timetable Scope Object.

The Time Table is identified uniquely in the SIF Zone by its GUID, School and School Year. A Time Table is linked to a particular school.

All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds.

SIF_Events are reported for this object.

Figure 3.11.9-1: TimeTable

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| TimeTable |  | Low | The purpose of this object is to define a schedule or Time Table structure/skeleton for the school. The Time Table is produced by the Time Tabling software. Once the Time Table is produced, the time tabling software creates the schedule based on business rules and constraints to fit into the time table structure. The proposed Time Table object is based on a combination of the proposed UK B6 – Timetable Cycle Object and Timetable Scope Object. The Time Table is identified uniquely in the SIF Zone by its GUID, School and School Year. A Time Table is linked to a particular school. All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds. |
@ | RefId | M | Low | GUID that identifies this TimeTable object. | RefIdType
| SchoolInfoRefId | O | Low | Optional, the GUID of the SchoolInfo Object if this object is known in the zone. | IdRefType
| SchoolYear | M | Low | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g., "2007"). | SchoolYearType
| LocalId | O | Low | Local TimeTable ID | LocalIdType
| Title | M | Low | Unique Name of the proposed Time Table | xs:normalizedString
| DaysPerCycle | M | Low | Max Number of days per Time Table cycle | xs:unsignedInt
| PeriodsPerDay | M | Low | Max Number of periods per Time Table Day | xs:unsignedInt
| TeachingPeriodsPerDay | O | Low | Teaching periods per day if different to PeriodsPerDay | xs:unsignedInt
| SchoolLocalId | O | Low | Optional Local School Id | LocalIdType
| SchoolName | O | Low | The school name in plain text. | xs:normalizedString
| TimeTableCreationDate | O | Low | Date Schedule was created or last edited. | xs:date
| StartDate | O | Low | First day of TimeTable. | xs:date
| EndDate | O | Low | Last day of the TimeTable. | xs:date
| TimeTableDayList | M | Low | Container for TimeTableDays in Schedule | TimeTableDayListType
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.9-1: TimeTable
JSON
{ "TimeTable": { "RefId": "64A309DA-063A-2E35-B359-D75101A8C3D0", "SchoolInfoRefId": "F2256EE2-B67F-47D6-AB47-94D4DEE0D0AD", "SchoolYear": "2008", "LocalId": "2008S1", "Title": "2008 Semester 1", "DaysPerCycle": 5, "PeriodsPerDay": 6, "TeachingPeriodsPerDay": 5, "SchoolLocalId": "01011234", "SchoolName": "Newest Secondary College", "TimeTableCreationDate": "2008-02-01", "StartDate": "2008-01-30", "EndDate": "2008-06-20", "TimeTableDayList": { "TimeTableDay": [ { "DayId": "1", "DayTitle": "Monday", "TimeTablePeriodList": { "TimeTablePeriod": [ { "PeriodId": "1", "PeriodTitle": "P1" }, { "PeriodId": "2", "PeriodTitle": "P2" }, { "PeriodId": "3", "PeriodTitle": "P3" }, { "PeriodId": "4", "PeriodTitle": "P4" }, { "PeriodId": "5", "PeriodTitle": "P5" }, { "PeriodId": "6", "PeriodTitle": "P6" } ] } }, { "DayId": "2", "DayTitle": "Tuesday", "TimeTablePeriodList": { "TimeTablePeriod": [ { "PeriodId": "1", "PeriodTitle": "P1" }, { "PeriodId": "2", "PeriodTitle": "P2" }, { "PeriodId": "3", "PeriodTitle": "P3" }, { "PeriodId": "4", "PeriodTitle": "P4" }, { "PeriodId": "5", "PeriodTitle": "P5" }, { "PeriodId": "6", "PeriodTitle": "P6" } ] } } ] } } }
XML
<TimeTable RefId="64A309DA-063A-2E35-B359-D75101A8C3D0"> <SchoolInfoRefId>F2256EE2-B67F-47D6-AB47-94D4DEE0D0AD</SchoolInfoRefId> <SchoolYear>2008</SchoolYear> <LocalId>2008S1</LocalId> <Title>2008 Semester 1</Title> <DaysPerCycle>5</DaysPerCycle> <PeriodsPerDay>6</PeriodsPerDay> <TeachingPeriodsPerDay>5</TeachingPeriodsPerDay> <SchoolLocalId>01011234</SchoolLocalId> <SchoolName>Newest Secondary College</SchoolName> <TimeTableCreationDate>2008-02-01</TimeTableCreationDate> <StartDate>2008-01-30</StartDate> <EndDate>2008-06-20</EndDate> <TimeTableDayList> <TimeTableDay> <DayId>1</DayId> <DayTitle>Monday</DayTitle> <TimeTablePeriodList> <TimeTablePeriod> <PeriodId>1</PeriodId> <PeriodTitle>P1</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>2</PeriodId> <PeriodTitle>P2</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>3</PeriodId> <PeriodTitle>P3</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>4</PeriodId> <PeriodTitle>P4</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>5</PeriodId> <PeriodTitle>P5</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>6</PeriodId> <PeriodTitle>P6</PeriodTitle> </TimeTablePeriod> </TimeTablePeriodList> </TimeTableDay> <TimeTableDay> <DayId>2</DayId> <DayTitle>Tuesday</DayTitle> <TimeTablePeriodList> <TimeTablePeriod> <PeriodId>1</PeriodId> <PeriodTitle>P1</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>2</PeriodId> <PeriodTitle>P2</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>3</PeriodId> <PeriodTitle>P3</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>4</PeriodId> <PeriodTitle>P4</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>5</PeriodId> <PeriodTitle>P5</PeriodTitle> </TimeTablePeriod> <TimeTablePeriod> <PeriodId>6</PeriodId> <PeriodTitle>P6</PeriodTitle> </TimeTablePeriod> </TimeTablePeriodList> </TimeTableDay> </TimeTableDayList> </TimeTable>
Example 3.11.9-1: TimeTable

### 3.11.10 TimeTableCell

The purpose of this object is to identify a specific cell within a particular TimeTable. A time table is a structure that represents all the available days and times (periods) for which a particular teaching group, or subject can be scheduled.

A TimeTableCell is uniquely identified in the ZIF zone by its GUID.

And the following must be provided at object creation:

- the timetable it belongs to,
- the subject that is being scheduled,
- the teaching group (representing the students, teachers and subject),
- the room that is allocated,
- the allocated teacher.

All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds.

SIF_Events are reported for this object.

Figure 3.11.10-1: TimeTableCell

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| TimeTableCell |  | Low | The purpose of this object is to identify a specific cell within a particular TimeTable. A time table is a structure that represents all the available days and times (periods) for which a particular teaching group, or subject can be scheduled. A TimeTableCell is uniquely identified in the ZIF zone by its GUID. And the following must be provided at object creation: the timetable it belongs to, the subject that is being scheduled, the teaching group (representing the students, teachers and subject), the room that is allocated, the allocated teacher. All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds. |
@ | RefId | M | Low | The GUID of the TimeTableCell | RefIdType
| TimeTableRefId | M | Low | The GUID of the TimeTable to which this Cell belongs | IdRefType
| TimeTableSubjectRefId | O | Low | The GUID of the Subject that this Cell is scheduling | IdRefType
| TeachingGroupRefId | M | Low | The GUID of the TeachingGroup being scheduled | IdRefType
| RoomInfoRefId | O | Low | The GUID of the Resource being Scheduled | IdRefType
| StaffPersonalRefId | O | Low | The GUID of the Staff Member being Scheduled | IdRefType
| TimeTableLocalId | O | Low | Time Table Local Identifier | LocalIdType
| SubjectLocalId | O | Low | Subject Local Id | LocalIdType
| TeachingGroupLocalId | O | Low | Teaching Group | LocalIdType
| RoomNumber | O | Low | Room number as presented to the user/application. | HomeroomNumberType
| StaffLocalId | O | Low | Staff LocalId | LocalIdType
| DayId | M | Low | Day Id | LocalIdType
| PeriodId | M | Low | Period Id within the Day Id | LocalIdType
| CellType | M | Low | Type of Lesson/Session eg Teaching, Lunch etc | xs:normalizedString
| SchoolInfoRefId | O | Low | Optional, the GUID of the SchoolInfo Object if this object is known in the zone | IdRefType
| SchoolLocalId | O | Low | Optional, Local School Id | LocalIdType
| TeacherList | O | Low | A listing of the teachers assigned to the activity, and the type of supervision they are credited with. If no teachers are listed, the activity is assumed to be unsupervised. | ScheduledTeacherListType
| RoomList | O | Low | List of rooms in which the scheduled activity is held. Used for onsite venues which are represented in the source system as rooms. Can include large venues (ovals, library, etc), if they have been represented as rooms; source system practice varies. | RoomListType
| LocalCodeList | O | High |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.10-1: TimeTableCell
JSON
{ "TimeTableCell": { "RefId": "64A309DA-063A-2E35-B359-D75101A8C3D1", "TimeTableRefId": "64A309DA-063A-2E35-B359-D75101A8C3D0", "TimeTableSubjectRefId": "22860091-7192-45B4-AB0C-F5B9DC19DE5C", "TeachingGroupRefId": "64A309DA-063A-2E35-B359-D75101A8C3D1", "RoomInfoRefId": "D3E34B35-9D75-101A-8C3D-00AA001A1652", "StaffPersonalRefId": "D3E34F41-9D75-101A-8C3D-00AA001A1652", "TimeTableLocalId": "2008S1", "SubjectLocalId": "07AR", "TeachingGroupLocalId": "20087ASPN 2008S1", "RoomNumber": "101", "StaffLocalId": "946379881", "DayId": "1", "PeriodId": "1", "CellType": "T", "SchoolInfoRefId": "D3E34B35-9D75-101A-8C3D-00AA001A1652", "SchoolLocalId": "01011234", "TeacherList": { "TeacherCover": [ { "StaffPersonalRefId": "98157AA0-13BA-8C3D-00AA-012B359D7512", "StaffLocalId": "US8923", "StartTime": "12:05:00", "FinishTime": "13:00:00", "Credit": "In-Lieu", "Supervision": "MinimalSupervision", "Weighting": 0.5 }, { "StaffPersonalRefId": "A75A0010-1A8C-301D-02E3-A05B359D0A00", "StaffLocalId": "ZY3213", "StartTime": "13:00:00", "FinishTime": "13:30:00", "Credit": "Extra", "Supervision": "MinimalSupervision", "Weighting": 0.5 } ] }, "RoomList": { "RoomInfoRefId": [ "11737EA4-301C-ADCA-75C8-7214A7C46BDB" ] } } }
XML
<TimeTableCell RefId="64A309DA-063A-2E35-B359-D75101A8C3D1"> <TimeTableRefId>64A309DA-063A-2E35-B359-D75101A8C3D0</TimeTableRefId> <TimeTableSubjectRefId>22860091-7192-45B4-AB0C-F5B9DC19DE5C</TimeTableSubjectRefId> <TeachingGroupRefId>64A309DA-063A-2E35-B359-D75101A8C3D1</TeachingGroupRefId> <RoomInfoRefId>D3E34B35-9D75-101A-8C3D-00AA001A1652</RoomInfoRefId> <StaffPersonalRefId>D3E34F41-9D75-101A-8C3D-00AA001A1652</StaffPersonalRefId> <TimeTableLocalId>2008S1</TimeTableLocalId> <SubjectLocalId>07AR</SubjectLocalId> <TeachingGroupLocalId>20087ASPN 2008S1</TeachingGroupLocalId> <RoomNumber>101</RoomNumber> <StaffLocalId>946379881</StaffLocalId> <DayId>1</DayId> <PeriodId>1</PeriodId> <CellType>T</CellType> <SchoolInfoRefId>D3E34B35-9D75-101A-8C3D-00AA001A1652</SchoolInfoRefId> <SchoolLocalId>01011234</SchoolLocalId> <TeacherList> <TeacherCover> <StaffPersonalRefId>98157AA0-13BA-8C3D-00AA-012B359D7512</StaffPersonalRefId> <StaffLocalId>US8923</StaffLocalId> <StartTime>12:05:00</StartTime> <FinishTime>13:00:00</FinishTime> <Credit>In-Lieu</Credit> <Supervision>MinimalSupervision</Supervision> <Weighting>0.5</Weighting> </TeacherCover> <TeacherCover> <StaffPersonalRefId>A75A0010-1A8C-301D-02E3-A05B359D0A00</StaffPersonalRefId> <StaffLocalId>ZY3213</StaffLocalId> <StartTime>13:00:00</StartTime> <FinishTime>13:30:00</FinishTime> <Credit>Extra</Credit> <Supervision>MinimalSupervision</Supervision> <Weighting>0.5</Weighting> </TeacherCover> </TeacherList> <RoomList> <RoomInfoRefId>11737EA4-301C-ADCA-75C8-7214A7C46BDB</RoomInfoRefId> </RoomList> </TimeTableCell>
Example 3.11.10-1: TimeTableCell

### 3.11.11 TimeTableContainer

This object has been proposed as part of a solution for issues raised with the transmission of timetable information where the software vendor producing the cyclic timetable is not the source of truth for ongoing publishing. e.g. not the endpoint provider.

This object is labelled as EXPERIMENTAL. That means it is subject to changes which may be breaking based on vendor and jurisdiciton implementation, testing and confirmation.

The purpose of this object is to allow a third party software product to submit a cyclic Timetable and all its components as a single payload. The POSTing of this information to an endpoint, allows the endpoint provider to allocate individual resource id's to the components so that the individual entities can be managed by the endpoint provider. e.g. specific TeachingGroupType in this payload will not have a RefId, that will be managed by the endpoint provider if that information is to be re-published separately.

SIF_Events are reported for this object.

Figure 3.11.11-1: TimeTableContainer

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| TimeTableContainer |  | Medium | This object has been proposed as part of a solution for issues raised with the transmission of timetable information where the software vendor producing the cyclic timetable is not the source of truth for ongoing publishing. e.g. not the endpoint provider. This object is labelled as EXPERIMENTAL. That means it is subject to changes which may be breaking based on vendor and jurisdiciton implementation, testing and confirmation. The purpose of this object is to allow a third party software product to submit a cyclic Timetable and all its components as a single payload. The POSTing of this information to an endpoint, allows the endpoint provider to allocate individual resource id's to the components so that the individual entities can be managed by the endpoint provider. e.g. specific TeachingGroupType in this payload will not have a RefId, that will be managed by the endpoint provider if that information is to be re-published separately. |
@ | RefId | M | Low | GUID that identifies this TimeTable Container. | RefIdType
| TimeTableSchedule | O | Low |  | TimeTableScheduleType
| TimeTableScheduleCellList | O | Low | All the TimeTable Cells that belong to this TimeTable. | TimeTableScheduleCellListType
| TeachingGroupScheduleList | O | Low | All the Teaching Groups that belong to this TimeTable. | TeachingGroupScheduleType
| LocalCodeList | O | Low |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.11-1: TimeTableContainer

### 3.11.12 TimeTableSubject

This purpose of this object is to define and communicate the subject or distinct piece of curriculum that needs to be scheduled by the time table generator. This is a new object proposed to meet SIF-AU needs. Reviews of the existing specifications identified two relevant objects - SchoolCourseInfo, defined in SIF US 2.2 specification and SchoolGroup, defined within the SIF UK 1.1 specification. These objects appear to have some similar context but seem overly complex considering that Australian requirements, which are limited to the Student Administration System or Curriculum Delivery System providing base information to the Time Tabling application about what curriculum offerings are being proposed. When this data is sent in a Request/Response only those subjects that are relevant to be scheduled (or active), should be sent to the TimeTabling application.

All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds.

SIF_Events are reported for this object.

Figure 3.11.12-1: TimeTableSubject

| Element/@Attribute | Char | Privacy Rating | Description | Type
--- | --- | --- | --- | --- | ---
| TimeTableSubject |  | Low | This purpose of this object is to define and communicate the subject or distinct piece of curriculum that needs to be scheduled by the time table generator. This is a new object proposed to meet SIF-AU needs. Reviews of the existing specifications identified two relevant objects - SchoolCourseInfo, defined in SIF US 2.2 specification and SchoolGroup, defined within the SIF UK 1.1 specification. These objects appear to have some similar context but seem overly complex considering that Australian requirements, which are limited to the Student Administration System or Curriculum Delivery System providing base information to the Time Tabling application about what curriculum offerings are being proposed. When this data is sent in a Request/Response only those subjects that are relevant to be scheduled (or active), should be sent to the TimeTabling application. All local ids in non-authoritative objects are optional. It is therefore up to the provider and the actual agent's design and choreography to determine whether or not to use or local ids from parent objects. There are cases in some subscribing systems where it might not possible to add RefId columns and therefore the RefId of related objects cannot be stored. For example a target system that listens to TimeTableSubject events and updates them may not be able to store the associated SchoolCourseInfoRefId with that object. The only way it can link the TimeTableSubject object with the appropriate course might be through its local course id. Having local ids that link the parent objects with the child object can simplify the agent design. Generally it is suggested to use the appropriate RefIds whenever possible and only use local ids if there is no other way to use RefIds. |
@ | RefId | M | Low | GUID that identifies this TimeTableSubject. | RefIdType
| SubjectLocalId | M | Low | SubjectLocalID - Distinct piece of curriculum that is to be scheduled. | LocalIdType
| AcademicYear | C | Low | Subject Year Level. Either AcademicYear or AcademicYearRange must be provided. | YearLevelType
| AcademicYearRange | C | Low | Range of Academic Years subject spans. Either AcademicYear or AcademicYearRange must be provided. | YearRangeType
| CourseLocalId | O | Low | Local Course Id, if associated with a Course. | LocalIdType
| SchoolCourseInfoRefId | O | Low | The GUID of the SchoolCourseInfo object. | RefIdType
| Faculty | O | Low | Faculty | xs:normalizedString
| SubjectShortName | O | Low | SubjectShortName | xs:normalizedString
| SubjectLongName | M | Low | SubjectLongName | xs:normalizedString
| SubjectType | O | Low | Core or Elective or ? | xs:normalizedString
| ProposedMaxClassSize | O | Low | Suggested maximum class size for this subject. | xs:decimal
| ProposedMinClassSize | O | Low | Suggested minimum class size for this subject. | xs:decimal
| SchoolInfoRefId | O | Low | Optional the GUID of the SchoolInfo Object if this object is known in the zone. | IdRefType
| SchoolLocalId | O | Low | Optional Local School Id | LocalIdType
| Semester | O | Low | Semester, Term, or Quarter subject offered. | xs:unsignedInt
| SchoolYear | O | Low | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g., "2007"). | SchoolYearType
| OtherCodeList | O | Low | Any other codes this subject is known by; eg VASS code for VCE in Vic. | OtherCodeListType
| LocalCodeList | O | High |  | LocalCodeListType
| SIF_Metadata | O | Low |  | SIF_MetadataType
| SIF_ExtendedElements | O | Low |  | SIF_ExtendedElementsType

Table 3.11.12-1: TimeTableSubject
JSON
{ "TimeTableSubject": { "RefId": "D3E34B35-9D75-101A-8C3D-00AA001A1652", "SubjectLocalId": "07AR", "AcademicYear": { "Code": "7" }, "SubjectShortName": "7 ART", "SubjectLongName": "Year 7 Art", "SubjectType": "E", "SchoolYear": "2009" } }
XML
<TimeTableSubject RefId="D3E34B35-9D75-101A-8C3D-00AA001A1652"> <SubjectLocalId>07AR</SubjectLocalId> <AcademicYear> <Code>7</Code> </AcademicYear> <SubjectShortName>7 ART</SubjectShortName> <SubjectLongName>Year 7 Art</SubjectLongName> <SubjectType>E</SubjectType> <SchoolYear>2009</SchoolYear> </TimeTableSubject>
Example 3.11.12-1: TimeTableSubject